Getting Started¶
The Helmholtz Codebase Service, based on GitLab can be used free-of-charge by anybody within Helmholtz and their partners. It is hosted by HIFIS Software entirely on HZDR servers, jointly created by UFZ and HZDR . With the general availability of the Helmholtz Cloud, the service will be available as a fully integrated Helmholtz Cloud Service and will follow the given regulations.
gitlab.hzdr.de became codebase.helmholtz.cloud
Since November 11th, 2022, Helmholtz Codebase is available under the new domain codebase.helmholtz.cloud. The previous domain gitlab.hzdr.de will redirect to this new domain. Nothing else changes for the users.
Sign-In¶
Available Options¶
There are two ways to sign in to the Helmholtz coding platform.
- Helmholtz ID: This is the recommended login method for everyone except HZDR employees (also known as Helmholtz AAI).
Please note
In addition to a variety of scientific and university institutions, Helmholtz ID also supports the social providers Google, GitHub and ORCID.
- HZDR LDAP: Only HZDR employees can use this method.
Switching to Helmholtz ID from any other login method
Please open your GitLab account settings and choose “Connect Helmholtz ID“ inside the Social Sign-in section. After successful login with the Helmholtz ID, you can disconnect from GitHub by choosing “Disconnect GitHub” in the previously mentioned Social Sign-in section.
Helmholtz vs. Non-Helmholtz Users¶
Collaboration is a key component in software development. This is why it is most important to enable anybody to easily contribute changes to projects regardless of their affiliation. Nevertheless, it is clear that we need to pose certain differences with respect to users that do not belong to a Helmholtz organization.
- Helmholtz employees with registered home institution in Helmholtz ID get full access to all components.
- All other users will become external users . This means they need to be invited to projects or groups and will have access according to the permissions of the role you assign. They can only create projects in their own personal namespace, but cannot create groups.
First Steps¶
Follow the GitLab basic guides to learn how to get started with the platform. For more in-depth questions consider contacting the HIFIS Software Consulting team.
Clone a Git Repository as a Helmholtz ID User¶
GitLab, like all other Helmholtz ID connected services,
does not recognize a password from users who log in via Helmholtz ID.
Therefore, you cannot use your center password when Git asks for the
credentials while running the git clone
command.
You have multiple options to interact with internal or private projects via git
.
Use git-credential-oauth¶
If you do not want to deal with SSH keys or Personal Access Tokens the Helmholtz
Codebase is configured to support interacting with Git Repositories using
git-credential-oauth
.
No configuration necessary for git-credential-oauth >= 0.13.4
As of version 0.13.4
the tool git-credential-oauth
ships with built-in support for the Helmholtz Codebase.
Below instructions are only necessary for versions before 0.13.4
.
- Install
git-credential-oauth
according to https://github.com/hickford/git-credential-oauth?tab=readme-ov-file#installation. -
Configure the credential helper
1
git credential-oauth configure
-
Configure Helmholtz Codebase specific settings
1 2 3 4 5
git config --global credential.https://codebase.helmholtz.cloud.oauthClientId e79ac88d46e4f3f79a494166fabb0310e7879d8e4776f316fb57b3100eaec13a git config --global credential.https://codebase.helmholtz.cloud.oauthScopes "read_repository write_repository" git config --global credential.https://codebase.helmholtz.cloud.oauthAuthURL /oauth/authorize git config --global credential.https://codebase.helmholtz.cloud.oauthTokenURL /oauth/token git config --global credential.https://codebase.helmholtz.cloud.oauthDeviceAuthURL /oauth/authorize_device
Create a Personal Access Token¶
- Go to https://codebase.helmholtz.cloud/-/profile/personal_access_tokens and create a personal access token.
- Use the scopes
read_repository
andwrite_repository
. - (Optionally, define an expiration date after which the token is considered to be invalid.)
- Click on
Create personal access token
. - GitLab will display the token once at the top of the page.
- Copy the token and save it in the password manager of your choice.
When Git asks for the password you can now enter the Personal Access Token you just created and interact with Git as usual.
Screenshot of the Personal Access Token Page
Info
More information is available in the GitLab documentation .
Use SSH to Interact With Your Repositories¶
Setting up SSH once might be the more convenient option for interacting with your repository. In this case you do not need to supply your username and password each time. For configuring your local Git installation to properly use SSH we invite you to have a look into the GitLab documentation. This guide will help you through the process of setting up Git and SSH.
The process looks like this:
- See if you have an existing SSH key pair.
- Generate an SSH keypair if not already present.
- Add an SSH public key to your GitLab account.
- Verify that you can connect.
Info
- Setup Git and SSH: https://codebase.helmholtz.cloud/help/user/ssh.md
- On Windows: Please additionally refer to https://codebase.helmholtz.cloud/help/user/ssh.md#use-ssh-on-microsoft-windows