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 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 AR system is not used with GitLab.
To get started, navigate to the following URL in your browser and enter your UMIACS Krb5 credentials in the LDAP tab:
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.
GitLab provides user documentation that can be accessed at https://gitlab.umiacs.umd.edu/help. Note: you will need to log in to view this page.
Some of the most useful sections include:
- 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/user/markdown.md
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. 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.
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 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.
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.