GitLab

../_images/GitLab_logo.svg

For use cases where the limitations of GitHub are problematic, a self-hosted GitLab instance is available. It provides code hosting and development collaboration features that are very similar in scope to GitHub, but by virtue of self-hosting the limitations of data sizes and GitHub Actions (the GitLab equivalent is called GitLab CI/CD) are circumvented. Git Large File Storage (LFS) is supported without payment.[1]

To get started with GitLab, browse to the ForestNavigator GitLab instance and register an account with your institutional email address by clicking on the Register now link at the bottom of the page. Should your email address not be recognized as belonging to a domain of a ForestNavigator partner institution, the registration will fail and you will see an error message requesting you to send an e-mail to still request access.

Caution

Outside of IIASA, the SSH protocol cannot be used to access this GitLab instance. When connecting from the IIASA-internal network, the default SSH port 22 is currently not usable for SSH. Instead, you will need to use port 2222 when using the SSH protocol. You can do so by adding the port number to the the Git SSH URL as follows ssh://git@gitlab.iiasa.ac.at:2222/forestnavigator/repository.git.

Note

When using Git LFS, you need to use the HTTPS protocol.

For security, two-factor authentication (2FA) is required. See the GitLab documentation on 2FA for details. The time-based one-time passwords (TOPT) 2FA option can be accommodated via a TOTP app on a smartphone or tablet. If you do not have one installed, TOTP apps are readily available via app stores. If you prefer a free TOTP app that is open-source and without spyware, FreeOTP or its FreeOTP+ fork (which is more user friendly) are good options.

Until an alternative authentication scheme is enabled on the GitLab instance, 2FA requires the use of personal access tokens or project access tokens when using the HTTPS protocol. You can insert a GitLab personal access token into a Git HTTPS URL as follows: https://<GitLab or Token User Name>:<Token>@gitlab.iiasa.ac.at/<Group>/<Repo Name>.git

Note

When you get an error such as SSL: CERTIFICATE_VERIFY_FAILED you can make things work until the certificate issue is fixed by using the -c http.sslVerify=false Git command line option or by seting the corresponding configuration setting on your local repository clone. Do not do this for your global Git configuration: it is insecure.

The GitLab account approval process is manual and may take a while. Once your account has been activated you can be made a member of one of more groups corresponding to a research project or some other shared interest. If you joined GitLab in order to gain access to the resources of a group and you are not added to that group because the groups administrators did not get notified of your signup, contact the administrator of that GitLab group or the research project manager and request membership.

Visit the GitLab online tutorials to learn more about the platform.