Git Version Control

To link commits and files in your Git repository to Allegra, you must include a reference to affected items in your commit comment in the form “#<item#>, e.g. ” #4711 “.

To integrate a version control system, a corresponding plug-in must be installed in the directory $TRACKPLUS_HOME/plugins. For the respective project or workspace, the function “Version Control” must be activated for the respective project or workspace (Administration > Workspaces > <Workspace> > Version control). In this view, you can make all the necessary settings for connecting to a Git repository.

Connection type

The Git repository can be reached via three protocols:

  • ssh : the Git repository is reached via the secure shell (ssh) protocol

  • file : this is possible if the Allegra server has direct access to the files in the Git repository

  • gitlab : the repository is managed by Gitlab

Repository path

This represents the absolute path to the repository and is only needed with file protocol.

Server name and server port

These are the URL and Git port to the repository server.

Gitlab project ID

In Gitlab, each project has an identification number. You can use this number to associate an Allegra project with a Gitlab project.

Project number pattern

Allegra associates commits that reference Allegra task numbers in their commit message. Task numbers are recognized using the regular expression specified here.

Authentication methods

The system supports the following authentication methods:

  • Anonymous: Only for direct access via the file protocol.

  • Password: You use a username and a password.

  • Public/private key: You use a key pair.

  • Token: You use an access token generated by Gitlab.

Integrated repository browser

The system has an integrated repository browser. You can access it via the cockpit tile “Version Management” and when editing an item.

Updating Allegra through Git

Allegra can synchronize its version control data with a Git repository in two ways:

  1. Via a scheduled automatic process every x minutes, where x is in the file $TRACKPLUS_HOME/quartz-jobs.xml and can be customized.

  2. Via a rest endpoint. When the system receives a POST request, it updates all the version control data. The URL is: {Allegra Server URL}/rest/vcPlugin/fetchLogs. You can use this endpoint URL in hook scripts from your Git or Gitlab server.