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

When using the SSH protocol, the regular SSH port 22 is currently not usable when connecting from the IIASA-internal network. Until the deployment is improved you will need to connect via port 2222 instead when using a Git client on the IIASA-internal network. 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.

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 a more sensible authentication scheme is enabled on the GitLab instance, 2FA requires the use of personal 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 using Git LFS, you need to use the HTTPS protocol.

Warning

When you get an error such as SSL: CERTIFICATE_VERIFY_FAILED a working certificate has not been installed on the server side. To make things work while that is the case, you can use the -c http.sslVerify=false Git command line option or set the corresponding configuration setting on your repo. 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, request access to the ForestNavigator GitLab group by…

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


1

Beyond the already-sunk storage infrastructure costs at IIASA.