What Are Push Mirrors?
A Push Mirror in Git is a feature that automatically synchronizes (mirrors) your Git repository to another Git repository location.
Push mirrors are available on the Enterprise plan.
Push Mirrors are one-way synchronization mechanisms that:
- Automatically forward all commits, branches, and tags from your source repository to one or more target repositories
- Run on an interval that you set for each mirror, and whenever you click Sync Now
- Maintain an exact copy of your repository at the destination
A push mirror does not run on every push. Changes reach the destination at the next interval, or when you click Sync Now. A sync force-pushes, so it replaces what is at the destination: use an empty repository as the target.
Common Use Cases
Push Mirrors provide several benefits for different workflows:
- Backup and redundancy: Keep an up-to-date copy of your repository on another server
- Multi-platform publishing: Maintain presence on multiple Git platforms (e.g., mirror your APIGit repository to GitHub or GitLab)
- Cross-organization sharing: Make a repository available to collaborators on another Git platform
Creating and Managing Push Mirrors
APIGit supports configuring multiple push mirrors to synchronize your repository to multiple destinations. To configure push mirrors:
- Navigate to your API repository
- Select the Settings tab
- Go to Push Mirrors
- View existing push mirrors under Mirror Targets or create new ones

The list shows the Remote Address, Interval, Last Error and Last Update of each mirror. Check Last Error if the destination stops updating. The icons in the Action column delete a mirror and run Sync Now.
Adding a New Push Mirror
To create a new push mirror, click the Add Push Mirror button in the upper left corner. You’ll need to provide:
- Remote Git Repository Address: The destination repository URL, like
https://www.github.com/hello/example.git - Authorization Method: Token, with an Access Token, or Username and Password
- Interval: How often to sync, using the time units
h,mands. The default is12h0m0sand the minimum is10m0s. Set it to0to disable periodic sync and use only Sync Now

Once configured, APIGit will keep your destination repositories in sync with your source repository at each interval. This ensures your API specifications and related files are consistently available across all your Git platforms.