Git Syncer is easy-to-use git repository mirror tool. Mirroring will create/update/delete refs in the target repository to match the source repository. WARNING: Never use repository with working data as target repository, it will be overwritten.
It can be run in docker, example:
docker run \
--rm \
--volume ./backend/examples/settings.yaml:/settings.yaml \
--env GIT_SYNCER_SETTINGS_YAML=/settings.yaml \
--env GITHUB_USER \
--env GITHUB_PASSWORD \
--env GITEA_USER \
--env GITEA_PASSWORD \
ghcr.io/ovsds/git-syncer:0.1.0
with examples/settings.yaml
:
scheduler:
one_time: true
repos:
- source: 'https://{{env "GITHUB_USER"}}:{{secret_env "GITHUB_PASSWORD"}}@github.com/ovsds/git-syncer.git'
target: 'https://{{env "GITEA_USER"}}:{{secret_env "GITEA_PASSWORD"}}@gitea.ovsds.ru/ovsds/git-syncer.git'
exclude_ref_regex:
- "refs/pull/.*"
more information can be found in backend/README.md.
- node
For all commands see Taskfile or task --list-all
.