{"id":20606805,"url":"https://github.com/jochumdev/vcs-mirrors","last_synced_at":"2026-04-20T00:04:26.936Z","repository":{"id":67627253,"uuid":"130458508","full_name":"jochumdev/vcs-mirrors","owner":"jochumdev","description":"Mirror your VCS with ease","archived":false,"fork":false,"pushed_at":"2020-01-14T08:18:39.000Z","size":44,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-17T02:40:56.382Z","etag":null,"topics":["gitlab","gitlab-mirror","mirroring","replication"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jochumdev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-21T09:20:52.000Z","updated_at":"2021-05-22T14:23:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"3438b0ac-22ea-48d1-8075-6298ef232229","html_url":"https://github.com/jochumdev/vcs-mirrors","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jochumdev%2Fvcs-mirrors","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jochumdev%2Fvcs-mirrors/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jochumdev%2Fvcs-mirrors/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jochumdev%2Fvcs-mirrors/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jochumdev","download_url":"https://codeload.github.com/jochumdev/vcs-mirrors/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242250928,"owners_count":20096897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gitlab","gitlab-mirror","mirroring","replication"],"created_at":"2024-11-16T09:34:45.541Z","updated_at":"2026-04-20T00:04:26.905Z","avatar_url":"https://github.com/jochumdev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. image:: https://badge.fury.io/py/vcs-mirrors.svg\n   :target: https://badge.fury.io/py/vcs-mirrors\n\n.. image:: https://img.shields.io/pypi/pyversions/vcs-mirrors.svg\n   :target: https://pypi.python.org/pypi/vcs-mirrors\n\nvcs-mirrors\n===========\n\nA python-only clone of https://github.com/samrocketman/gitlab-mirrors/ with a YAML config file.\n\nRequirements\n------------\n\n- Python 3.5+ (Debian Stretch+, Ubuntu Xenial+)\n- virtualenv if you don't want to mess with System Python\n- git-remote-bzr https://github.com/felipec/git-remote-bzr for Bazaar support\n\nFeatures\n--------\n\n* Mirror different types of source repositories: Bazaar, Git, Subversion. Mirror all into git.\n* GitLab mirror adding.\n    * When adding a mirror if the project doesn't exist in GitLab it will be auto-created.\n    * Set project creation defaults (e.g. issues enabled, wiki enabled, etc.)\n* Github mirror adding.\n    * Same as with Gitlab.\n* mirror anything to Git (not just Gitlab and Github).\n* Update a single mirror.\n* Update all known mirrors.\n\n\nInstallation\n++++++++++++\n\nOn Debian\n---------\n\nFor Bazaar support:\n\n.. code:: bash\n\n    $ apt install git-remote-bzr\n\nInstall into a virtualenv:\n\n.. code:: bash\n\n    $ virtualenv -p /usr/bin/python3 --no-site-packages venv\n    $ venv/bin/pip install \"vcs-mirrors[gitlab,github]\"\n\nThen copy vcs-mirrors.yaml.example into your current-working-directory:\n\n.. code:: bash\n\n    $ cp venv/lib/python3.6/site-packages/vcs-mirrors/vcs-mirrors.yaml.sample vcs-mirrors.yaml\n\nEdit it for your needs.\n\nUsage\n+++++\n.. code:: bash\n\n    venv/bin/vcs-mirrors -h\n    venv/bin/vcs-mirrors add -h\n\nadd examples:\n-------------\n\nThis one try to create a repo \"pcdummy/proxmox-dockerfiles\" on git.lxch.eu - the identifier must be unique in the config file:\n\n.. code:: bash\n\n   $ vcs-mirrors add me/p-dockerfiles https://github.com/pcdummy/proxmox-dockerfiles.git git.lxch.eu:pcdummy/proxmox-dockerfiles\n\n\nThis doesn't:\n\n.. code:: bash\n\n    $ vcs-mirrors add me/p-dockerfiles https://github.com/pcdummy/proxmox-dockerfiles.git git@git.lxch.eu:pcdummy/proxmox-dockerfiles.git\n\nFull mirroring include \"prune\" and \"force\" pull/push:\n\n.. code:: bash\n\n    $ vcs-mirrors add -f -p me/p-dockerfiles https://github.com/pcdummy/proxmox-dockerfiles.git git.lxch.eu:pcdummy/proxmox-dockerfiles\n\nIf you give an host as target \"add\" creates the repo on the host and translates it to a git URL else add does nothing else than adding the params to your configuration file.\n\n\nDevelopment\n+++++++++++\n\n.. code:: bash\n\n    $ pip install -e .\"[development,gitlab,github]\"\n\n\nKeywords\n++++++++\n\ngitlab github sync mirror vcs-mirror bazaar","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjochumdev%2Fvcs-mirrors","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjochumdev%2Fvcs-mirrors","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjochumdev%2Fvcs-mirrors/lists"}