Difference between revisions of "GitLab"

From UMIACS
Jump to navigation Jump to search
(Fixed links to permissions and markdown)
 
(16 intermediate revisions by 7 users not shown)
Line 1: Line 1:
GitLab is source code collaboration software based on [[Git]] source control management.  It allows users to create their own repositories and share them with other users/groups or publicly.  It supports built-in project wikis, code review, and issue tracking for each project.  A full list of features can be found on the [https://www.gitlab.com/gitlab-ce GitLab] website.
+
GitLab is source code collaboration software based on [https://git-scm.com/ Git] source control management.  It allows users to create their own repositories and share them with other users/groups or publicly.  It supports built-in project wikis, code review, and issue tracking for each project.  A full list of features can be found on the [https://www.gitlab.com/gitlab-ce GitLab] website.
  
All code is hosted on-site on UMIACS servers and is backed up nightly.  We give all UMIACS users 5 projects with a soft limit of 400Mb per project.  Projects that you create inside of a group namespace still count towards your project limit.  UMIACS Staff can help create Lab groups (called namespaces) and delegate authority to manage the group to one or more faculty members.  Permissions are assigned within GitLab.  The UMIACS [[ApplicationResource|AR]] system is '''not''' used with GitLab.
+
All code is hosted on-site on UMIACS servers and is backed up nightly.  We give all UMIACS users 10 projects with a hard limit of 800Mb per project.  Projects that you create inside of a group namespace still count towards your project limit.  UMIACS Staff can help create Lab groups and delegate authority to manage the group to one or more faculty members.  Permissions are assigned within GitLab.
  
To get started, navigate to the following URL in your browser and enter your UMIACS Krb5 credentials in the LDAP tab:
+
To get started, navigate to the following URL in your browser, you will be redirected to UMIACS Single Sign On where you can login with your UMIACS credentials:
  
 
   https://gitlab.umiacs.umd.edu
 
   https://gitlab.umiacs.umd.edu
 +
 +
  Note: There might be issues connecting to GitLab if you are using an older git client. Therefore, please make sure you update your git client.
 +
  If you use TortoiseGit, please make sure it is updated to versions above TortoiseGit 2.1.x.x.
 +
  
 
==GitLab Offsite Collaborators==
 
==GitLab Offsite Collaborators==
Line 14: Line 18:
  
 
==User Documentation==
 
==User Documentation==
GitLab provides user documentation that can be accessed at https://gitlab.umiacs.umd.edu/help.  <b>Note:</b> you will need to log in to view this page.
+
GitLab provides user documentation that can be accessed at https://gitlab.umiacs.umd.edu/help
  
 
Some of the most useful sections include:
 
Some of the most useful sections include:
Line 21: Line 25:
  
 
==Repository URLs==  
 
==Repository URLs==  
Users can download and clone directories from the remote repository using git clone. There are two different URLs that can be used: HTTPS and SSH.  
+
Users can clone git repos over either SSH or HTTPS. '''We recommend using SSH because it is more convenient for most users.'''  The blue "Clone" button in the upper-right corner of your GitLab project page will contain the clone URL for whichever authentication method you prefer.
You can view the URL underneath the Project title in the Project tab. Change the displayed URL by clicking on the URL type you want to see.  
+
 
 
===SSH===
 
===SSH===
The SSH URL is more direct, though it is harder to set up. In order to do so, you will have to add an SSH key to your Gitlab account. Instructions to do so can be found [https://gitlab.umiacs.umd.edu/help/ssh/README here]. Once you have the SSH key added, you can log in without having to enter any credentials from the machine and account for which you created the SSH key.  
+
To use SSH, add an SSH key to your Gitlab account. Instructions to do so can be found [https://gitlab.umiacs.umd.edu/help/ssh/README here]. Once you have the SSH key added, you can authenticate without having to enter any credentials from the machine and account for which you created the SSH key if your keys is not password-protected.
 +
 
 
===HTTPS===
 
===HTTPS===
The HTTPS URL is easier to set up- you just clone directly from the repository using the HTTPS URL. However, you will have to re-enter your credentials for GitLab every single time that you attempt to commit to, push to, pull from, or otherwise access the remote repository.
+
The HTTPS URL can be used as well, but you will need to setup Personal Access Tokens in order to connect. Instructions to create one can be found [https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html here]. Once you have a token, you can use that as your password when prompted. You will have to re-enter your credentials for GitLab every single time that you attempt to commit to, push to, pull from, or otherwise access the remote repository.
 +
 
 +
==Make GitLab projects public==
 +
Making projects public grants access to everyone. Projects can only made public by the owner. To make your projects on GitLab public, follow the steps below:
 +
 
 +
1. Go to your project page.
 +
 
 +
2. Click on '''Settings'''.
 +
 
 +
3. Scroll down to '''Project Visibility'''. Choose '''Public''' from the drop-down menu.
 +
 
 +
4. Scroll down and click on '''Save Changes'''
 +
 
 +
5. Scroll down to '''Repository''' under '''Project Visibility''' and select '''Everyone with access''' from the drop-down menu.
 +
 
 +
6. Click on '''Save Changes'''.
 +
 
 +
Now your project has become public with its repository accessible by anyone.

Latest revision as of 21:20, 23 January 2020

GitLab is source code collaboration software based on Git source control management. It allows users to create their own repositories and share them with other users/groups or publicly. It supports built-in project wikis, code review, and issue tracking for each project. A full list of features can be found on the GitLab website.

All code is hosted on-site on UMIACS servers and is backed up nightly. We give all UMIACS users 10 projects with a hard limit of 800Mb per project. Projects that you create inside of a group namespace still count towards your project limit. UMIACS Staff can help create Lab groups and delegate authority to manage the group to one or more faculty members. Permissions are assigned within GitLab.

To get started, navigate to the following URL in your browser, you will be redirected to UMIACS Single Sign On where you can login with your UMIACS credentials:

 https://gitlab.umiacs.umd.edu
 Note: There might be issues connecting to GitLab if you are using an older git client. Therefore, please make sure you update your git client. 
 If you use TortoiseGit, please make sure it is updated to versions above TortoiseGit 2.1.x.x.


GitLab Offsite Collaborators

Any UMIACS user can now create an unlimited number of offsite collaborator accounts for our Security Groups, GitLab and Object Store. These accounts can not create repositories or groups, but may be given access to your repositories or groups. You can find this utility in our Requests application under UMIACS Collaborators.

User Documentation

GitLab provides user documentation that can be accessed at https://gitlab.umiacs.umd.edu/help

Some of the most useful sections include:

Repository URLs

Users can clone git repos over either SSH or HTTPS. We recommend using SSH because it is more convenient for most users. The blue "Clone" button in the upper-right corner of your GitLab project page will contain the clone URL for whichever authentication method you prefer.

SSH

To use SSH, add an SSH key to your Gitlab account. Instructions to do so can be found here. Once you have the SSH key added, you can authenticate without having to enter any credentials from the machine and account for which you created the SSH key if your keys is not password-protected.

HTTPS

The HTTPS URL can be used as well, but you will need to setup Personal Access Tokens in order to connect. Instructions to create one can be found here. Once you have a token, you can use that as your password when prompted. You will have to re-enter your credentials for GitLab every single time that you attempt to commit to, push to, pull from, or otherwise access the remote repository.

Make GitLab projects public

Making projects public grants access to everyone. Projects can only made public by the owner. To make your projects on GitLab public, follow the steps below:

1. Go to your project page.

2. Click on Settings.

3. Scroll down to Project Visibility. Choose Public from the drop-down menu.

4. Scroll down and click on Save Changes

5. Scroll down to Repository under Project Visibility and select Everyone with access from the drop-down menu.

6. Click on Save Changes.

Now your project has become public with its repository accessible by anyone.