GitLab: Difference between revisions

From UMIACS
Jump to navigation Jump to search
No edit summary
No edit summary
 
(31 intermediate revisions by 10 users not shown)
Line 1: Line 1:
GitLab is open source code collaboration software based around the [[Git]] source control framework.  It allows users to create their own repositories and share them with other UMIACS users/groups or publicly.  Additionally, it has features allowing a built-in wiki, code review, and issue tracker 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 allow users to have 5 projects with a soft limit of 1G per project.  Projects that you create inside of a group namespace still count towards your project limit.  UMIACS Staff can help create Lab groups (namespaces) and delegate authority to manage the group to one or more faculty members.
All code is hosted on-site on UMIACS servers and is backed up nightly.  We give all non-[[ClassAccounts |class account]] 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==
Any UMIACS user can now create a unlimited number of offsite
Any UMIACS user can now create an unlimited number of offsite
collaborator accounts in our GitLab.  These accounts can not create
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
repositories or groups, but may be given access to your repositories or
groups.  You can find this utility in our [https://intranet.umiacs.umd.edu/requests Requests] application under the [https://intranet.umiacs.umd.edu/requests/gitlab GitLab Offsite Collaborators].
groups.  You can find this utility in our [https://intranet.umiacs.umd.edu/requests Requests] application under [https://intranet.umiacs.umd.edu/requests/accounts UMIACS Collaborators].
 
These users will need to confirm and perform a password reset within GitLab before starting to use the account.  They will be emailed with directions on how to do this from GitLab when you create their account.


==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:
* Permissions and user roles - https://gitlab.umiacs.umd.edu/help/permissions
* Permissions and user roles - https://gitlab.umiacs.umd.edu/help/user/permissions.md
* GitLab markdown for wikis and READMEs - https://gitlab.umiacs.umd.edu/help/markdown
* GitLab markdown for wikis and READMEs - https://gitlab.umiacs.umd.edu/help/user/markdown.md
 
==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 [https://gitlab.umiacs.umd.edu/help/user/ssh.md 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 key 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 [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 15:23, 21 February 2024

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 non-class account 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 key 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.