Getting started with GitLab

Dartmouth College runs a GitLab instance available for students, faculty, and staff to host their source code in Git. The following outlines the service in FAQ format. 

How can I log into Dartmouth's GitLab instance?

Dartmouth's GitLab requires two-factor authentication (2FA) via DUO. If you have not yet enrolled in DUO, you can do so at https://2faenroll.dartmouth.edu/.

After you have been enrolled in DUO, you can log into GitLab at https://git.dartmouth.edu/. Upon your first log in, an account will be created for you.

 

What are GitLab groups?

GitLab offers self-service creation and management of groups. As a new user, you won't be a member of any groups. The web interface will allow you to create a new group and manage members/roles within that group. If there are existing groups you wish to be added to, you can request (outside of GitLab) that one of the group owners add you.

Besides defining a group of users and permissions, GitLab groups also let you store code repositories under the group. This is ideal for situations where teams or multiple people own code. 

 

What is a GitLab project?

A GitLab project is a code repository and it can be owned by a user or a group. Besides source code, projects give you a place to track issues, create a wiki, link to CI/CD targets, etc.

 

As a group or project owner, what permissions can I grant to my source code?

Dartmouth's GitLab is available on the public Internet and can be accessed from off campus. Groups and projects can be:

  • Public (open to anyone, even unauthenticated users)
  • Internal (open to all authenticated users)
  • Private [Default] (open only to explicitly granted groups/users)


How do I interact with GitLab from the command line?

To install Git see https://git-scm.com/downloads. Note that most Macs already have Git installed.

You will want to add an SSH key to your profile so that you can authenticate to GitLab from the command line. Authenticating via username/password is disabled. Documentation on creating an SSH key is at https://git.dartmouth.edu/help/ssh/README#generating-a-new-ssh-key-pair. For Mac users, we recommend the following .ssh/config settings to use the Mac keychain to store SSH key passphrases and automatically add keys into ssh-agent:

AddKeysToAgent yes
UseKeychain yes

(For more details, see https://apple.stackexchange.com/a/264974/20612)

You may also want to consider updating your terminal prompt to include Git status indicators. If you would like to do that, we recommend the following:

 

Are there any recommended GUI clients?

Sourcetree has features to visualize branching and run Git commands through GUI workflows. Most IDEs provide Git support. For example, Visual Studio Code has built-in Git support, while Eclipse offers support via a plugin.

 

Where should I go to learn more about Git?

There are countless resources on Git, but if you're looking for more of a tutorial, we recommend:

 

Where do I go if I have a question about Dartmouth's GitLab instance?

You can open a service request and set "Responsible" to "Infrastructure Services."
 

Details

Article ID: 70777
Created
Thu 1/24/19 12:40 PM
Modified
Fri 11/15/19 9:40 AM