Gigrator Save

Git repos migration tool which supports Github / Gitee / Gitlab / Gitea / Coding / Gogs / 腾讯工蜂.

Project README

Gigrator

GitHub Action 来了: action-mirror-git 镜像同步 Git 仓库

Git 代码仓批量迁移

gigrator.png

Start

git clone https://github.com/k8scat/gigrator.git
cd gigrator
pip3 install -r requirements.txt

# 迁移前需在配置文件(settings.py)中配置 SOURCE_GIT 和 DEST_GIT
# 配置参考: settings_example.py
python3 gigrator.py

Develop

# Base class
class Git:
    pass

# Other GitServer class should inherit Git
class OtherGit(Git):
    pass

Support

Note:

  • 不支持迁移至 Coding, 可从 Coding 迁移至其他 Git 服务器
  • 由于 Coding 的升级, 其基础 API 不再是 https://coding.net, 而改为: https://{username}.coding.net
  • 迁移前请确认已在Git服务器上添加 SSH Key
  • 只能迁移指定用户下的仓库, 即 {username}/{repo_name}, 不包括参与的或者组织的仓库
  • 迁移包括commits、branches和tags, 不包括issues、pr和wiki

Environment

  • Git
  • Python

开发环境: git version 2.20.1 (Apple Git-117) + Python 3.7.2

Dependencies

References

GitLab

GitLab GraphQL API

Can not create a project!

It will co-exist with the current v4 REST API. If we have a v5 API, this should be a compatibility layer on top of GraphQL.

GitHub REST API v3

GitHub GraphQL API v4

Gitee

Gitea

Gogs

Coding

GF (腾讯工蜂)

GraphQL Client

License

MIT

Open Source Agenda is not affiliated with "Gigrator" Project. README Source: k8scat/Gigrator
Stars
46
Open Issues
4
Last Commit
1 month ago
Repository
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating