3步自动同步你的 Github 仓库到 Gitee 仓库
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
相信有很多以 Github 为主阵地的开发者,都同样拥有一个镜像备份的心。
比如我就偶尔使用 Gitee 同步 Github,对 Gitee 已有强大的“从 Github/Gitlab 导入仓库”和“项目名旁边的刷新按钮点击同步”功能非常满意,但是认识到 Github Actions 的强大和便捷后,仍忍不住要搞一些小轮子(小动作)。
最终发现:站在巨人的肩膀上真香,感谢 项目让这个备份的目标又进一步。
Github 仓库每一次提交后,通过 Github Actions 自动将仓库同步到 Gitee 上。
(已了解的直接跳过)
Features • GitHub Actions
GitHub 操作的工作流程语法 - GitHub Docs
GitHub Actions 入门教程 - 阮一峰的网络日志
An Introduction to Github Actions
只有不到 40 行的代码,还是直接上吧。
点击查看仓库上的代码文件
在 Github 需要同步的仓库上添加 3 个 secrets: (Setting -> Secrets -> New repository secret)
新建 private key 方法:
同时将公钥添加到 Github 项目的 secrets 中;
新建 token 方法:
点击上面的链接并登录 Gitee, 点击“生成新令牌”,
添加描述,比如用处 - Github 仓库同步到 Gitee;
权限默认全选,点击提交,显示出生成的 token 值;(注意保存,需要填到 Github 的 secrets 中)
普通的一次 GitHub Action 执行需要 2-3 分钟,2000 / 3 = 666
次提交,足足满足一天 22 次的改动提交,几乎没有任何顾虑。
当账号使用量达到 75% 的时候,Github 会发送邮件提醒:
You've used 75% of included services for the xxx account
在 账户中,通过 +
下拉列表中的 “从 Github/Gitlab 导入仓库”,导入要同步的 Github 仓库;
GITEE_USER
,比如个人的 Gitee user id:
GITEE_PRIVATE_KEY
,获取方法(如果已有,直接设置) -
GITEE_TOKEN
,获取方法 -
复制 ,到 Github 仓库下的 .github
文件夹的 workflows
文件夹下,即 [project-folder]/.github/workflows/sync2gitee.yml
,并提交到 Github 仓库。(这次操作就会触发同步的 Action)
后续在 Github 仓库上提交改动(如修改 README.md),都可以到 上对应仓库验证是否同步成功。
从 Github 仓库 Action
到 Gitee 仓库