Team coordination and programming with LRZ GitLab

GitLab-1


If you develop software, you know GitLab as a tool for software versioning. But it can do much more. It can be used to coordinate teams, tasks and research work. That is why the Leibniz Supercomputing Centre offers GitLab as an IT service: Find out how scientists and administrators can use it for their purposes.

Scientific projects, whether they involve developing software in a team, writing proposals or summarising research results, require coordination. The online platform GitLab supports: When users save code and other file formats to their accounts, they are stored in so-called ’Git repositories’ and each subsequent change is created as a new version. This means that all information is preserved, different versions can be compared, and errors can be corrected by reverting to previous versions. With its versioning feature, GitLab also supports the development of additional features in software or further ideas or secondary aspects for texts or projects. These can be tracked in a 'branch' and merged with the 'main branch' when required.

GitLab-2     GitLab-3

Two screenshots of GitLab: the different versions of a GitLab-Repository and the coloured plan of tasks of workings groups. Photos: GitLab

GitLab can be accessed from anywhere in the world, making it ideal for regional and international collaboration. Anyone who creates an account at GitLab.com can use the basic features for free, with additional options available for a fee. The Leibniz Supercomputing Centre uses the GitLab software on its own servers to support students, researchers and administrative staff at universities and research institutions in their work with the free LRZ GitLab service. Users of the LRZ GitLab instance benefit from additional security: the LRZ ensures data security and reliability with regular backups, and each account can be protected with two-factor authentication. LRZ GitLab is popular - the LRZ currently manages around 30,000 accounts, of which 5,000 are in constant use.

LRZ GitLab for students and researchers

The LRZ regulates the use of LRZ GitLab with two different licences and on two server instances (LRZ Gitlab and LRZ Gitlab CE): The education licence applies exclusively to non-commercial projects in research and teaching, giving students and researchers access to all the features and integrated tools that are covered by the Premium and Ultimate payment model on the online platform: including, for example, tools for project quality and security management, prioritisation of tasks and topics or precise role assignments within the team.

For collaboration in research teams, LRZ GitLab also offers the option of forming a group. Up to 20 external colleagues can be invited to collaborate on projects via GitInvited. This allows teams to organise more projects or store more data in LRZ GitLab than in an individual account. If one member of the group leaves, the rest can continue working without having to transfer data from one personal account to another.

Students and researchers use GitLab for a variety of tasks:

  • They develop software, tools, web applications, games and applications - sometimes as part of a team, sometimes on their own.
  • GitLab can also be used to modify, improve and publish scientific code and other freely available open source programs for further use.
  • Working groups use it to edit and update datasets, such as experimental data, survey results or questionnaires.
  • GitLab also helps people write seminar papers, doctoral theses or scientific articles: in the natural and life sciences, these are usually written using LaTeX software, which can also display mathematical symbols and formulae. Co-authors can keep working on the latest version of their collaborative work at any time.
  • Lecturers provide learning materials via GitLab and students can organise their group work here.
  • Test and examination tasks can also be distributed to students with the help of GitLab. However, personal files, including completed examination forms, may not be saved on GitLab. There are better LRZ services for storing and protecting sensitive data.

LRZ Gitlab CE for Administration and IT Operations

However, version control and coordination functions are also in demand in other areas of academic life: staff at chairs or in the administration of research institutes can also rely on LRZ GitLab in their daily work, albeit with a smaller range of functions. LRZ GitLab CE is based on the open source GitLab Community Edition (GitLab CE). LRZ GitLab CE also runs on LRZ servers, is maintained there and the data is regularly backed up. However, both LRZ GitLab offerings are maintained on separate hardware instances that are not connected to each other. Therefore, each service requires its own registration. This strategy should take into account who is using the services in different roles at the same time - for example, students working in administration or at the chair. These users work with two different user accounts and should be aware of where their work is stored. Different URLs and colour identifiers help to differentiate between them. In the management or operation of IT resources, GitLab also supports cross-departmental, national and international work on software, texts and administrative tasks, as well as the digitisation of processes.

  • For example, GitLab helps to configure and manage servers and cloud services.
  • Administrations can organise the deployment of software or IT technology, or manage access rights to IT services and data.
  • Universities  can manage participants in seminars and other events. (LU)