Table of Contents

GitLab User Documentation

Welcome on the UNIGE GitLab documentation. You will find here all the information you need to use the UNIGE GitLab instance.

See:
  1. https://gitlab.unige.ch/help/user/index.md if you are looking for the upstream documentation of the UNIGE GitLab running instance.
  2. https://catalogue-si.unige.ch if you need to contact the team behind GitLab.

Learning

Please see the UNIGE official formations at https://spc.unige.ch/en/teaching/digitalskills/ (old https://spc.unige.ch/en/teaching/digitalskills/).

Access

gitlab.unige.ch is open to the whole Swiss educational audience via SWITCHaai (UNIGE members should use their ISIs credentials) and to any non-academic entity via SWITCH edu-ID (free registration required) . For this reason, password authentication has been deactivated.

SSH

Git clone/push/pull are available:

  1. via SSH (see https://gitlab.unige.ch/help/user/ssh ) after either the user has added a key in the GitLab profile settings or one of the project administrators has set up a Deploy Key in the GitLab project interface (see https://gitlab.unige.ch/help/user/project/deploy_keys/index.md )
  2. via HTTPS after the user has generated a Personal Access Token in the GitLab profile settings (see https://gitlab.unige.ch/help/user/profile/personal_access_tokens.md ) or one of the project administrators has set up a Deploy Token in the GitLab project interface (see https://gitlab.unige.ch/help/user/project/deploy_tokens/index.md )

Permissions

Access to each resource is directly managed per (sub)group or project via the web interface (see https://gitlab.unige.ch/help/user/permissions ).

To easy access management, you should think in a hierarchical terms from the very beginning:

  1. create a top-level group with the least possible members (basically, only the administrators)
  2. inside this group, create sub-groups or projects with specific permissions
Independently of the authentication source (SWITCHaai or SWITCH edu-ID), those users without a UNIGE mail address will automatically get an external account (see https://gitlab.unige.ch/help/user/permissions#external-users ), which means that:
  1. they can not create groups or projects
  2. read access to private or internal projects must be explicitly granted
  3. read access to public projects is permitted
  4. write access to any project must be explicitly granted

Resources

By default, the following settings apply to any internal users:

  1. maximum number of projects: 20
  2. maximum size of a single project: 100MB
  3. maximum size of an attachment: 10MB
  4. maximum size of a single git push : 1MB

Please contact the UNIGE GitLab administrators (see https://catalogue-si.unige.ch/gitlab ) if you need more resources.

If you need to store large files such as audio, video or graphics ones, please consider switching to Git LFS!

Features

The UNIGE GitLab instance is based on the upstream Community Edition (cf. https://about.gitlab.com/install/ce-or-ee/), since until now no Enterprise features have been needed after various evaluation.

Of the CE-included feature, the UNIGE GitLab instance does not support the following ones:

Project visibility

By default, each project is private , i.e. they can only be cloned and viewed by project members.

For more details, please check the corresponding section of the upstream documentation of the UNIGE GitLab instance.

External resources

Learn Git with a game: https://ohmygit.org/

Git Windows client https://dataforum.unige.ch/t/recommended-git-client-for-gitlab-unige-account/322/2

SPC VCS courses https://spc.unige.ch/en/teaching/digitalskills/source-code-management-git/

You did something wrong with Git? This site may help you: https://ohshitgit.com/