The IPFire Git Server is able to sync repositories with other sources. This is very helpful when developers what to publish code on platforms like GitHub as well as the IPFire Git servers or what to push to somewhere else and mirror on the IPFire Git servers.
To regularly pull from a remote repository, create a clone of your Git repository in your usual home directory and create a "remote" called "pull":
git remote add pull https://my-git-server.example.com/repository.git
Add a remote to your repository called "push":
git remote add push https://my-git-server.example.com/repository.git
The synchronisation runs in mirror mode and will wipe all branches, tags and other remote content that does not exist on the local Git server.
If you need to authenticate to push or pull your repository, you can create an SSH key and put it into your home at
~/.ssh/git-sync and it will be used for all your repositories.
You can create the key for example with the following command:
ssh-keygen -t ed25519 -f ~/.ssh/git-sync