One-way mirroring from Git servers

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

If you are mirroring files stored with Git LFS, see the Git LFS topic.

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

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

Also, graph-push-commit triggers are supported with mirroring. See Triggers.

You, the system administrator for P4 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 P4 Server receives the update from the Git Connector.
  5. Optionally, a CI tool, such as Jenkins, polls on a P4 workspace to detect changes across multiple repos and performs a build.

In this section: