Helix4Git Administrator Guide (2018.2)

One-way mirroring from Git servers

Helix4Git can duplicate ("mirror") commits from a Git repo managed by one of the following Git servers:

A typical use case for mirroring one or more external Git repos into Helix is to enable a single instance of a CI tool, such as Jenkins, to build a complex job that syncs contents from both classic Helix and Git repos.

The mirroring is one-way: from the Git server into Helix.

Tip

graph-push-commit triggers are supported with mirroring. See the Helix Core Server Administrator Guide: Fundamentals chapter on "Using triggers to customize behavior".

You, the system administrator for Helix and the Git server, configure a webhook in the Git server and the Git Connector server, which enables this flow:

  1. A Git user pushes a branch to the Git server.
  2. The external repo in the Git server receives a commit of a Git repo or tag, which fires the webhook.
  3. The Git Connector receives the webhook message and fetches the commit from the Git server repo that is the source for mirroring.
  4. The Helix Server receives the update from the Git Connector.
  5. Optionally, a CI tool, such as Jenkins, polls on a Helix workspace to detect changes across multiple repos and performs a build.
Important

If you want to use Git Large File Storage (LFS) in your one-way mirroring, as the root user on the Git Connector server, install the git-lfs package for your operating system from https://github.com/git-lfs/git-lfs/releases/tag/v2.3.4. This is an option for GitHub, GitLab, and Gerrit.