GitLab is a platform enabling users to develop, share, and test their code. LC formerly supported Bitbucket servers, but retired these in favor of GitLab in Winter 2022.

GitLab uses git, a free and open source tool for version control. Git allows multiple developers to contribute to a shared code base, gracefully integrating changes made by individual developers on independent copies of the code. It tracks the history of code contributions and allows users to create and interact with different versions of the code, where previous changes are undone or selectively applied.

The code base for a given project is stored in a repository or a repo.

A GitLab project contains not only a repository, but also, for example, issues (discussion threads tracking problems or feature requests for the code), and milestones.

GitLab projects provide info about the history and results of continuous integration (CI) testing on the project repository. CI is the process of automatically incorporating new changes to a code base only after verifying that the edited code can pass a standard suite of tests. CI prevents code breakage by helping to identify bugs before they are deployed and allows developers to regularly and frequently alter the code.

Essential to CI are pipelines, which automate the steps needed to test, integrate, and deploy a project’s code whenever changes are introduced.

More GitLab terms are defined at https://docs.gitlab.com/ee/topics/git/terminology.html.

A. Getting started🔗

For instructions on how to log in to LC GitLab and how to set up your ssh keys (and possibly a config file), go here.

B. Troubleshooting🔗

For info on how to deal with common GitLab issues, please see our troubleshooting guide.

C. Getting Help🔗

If you have Gitlab questions that you can't answer with the docs below, please feel free to reach out to the LC Hotline. We can be reached by phone at (925) 422-4531 or by email at lc-hotline@llnl.gov.

D. Other resources🔗

  1. Configuring SSH for GitLab
  2. First steps with GitLab
  3. GitLab CI