分享一套脚本,自动将 GitHub 个人仓库批量备份到 Gitea

这是一个自动将 GitHub 仓库镜像到 Gitea 的 Shell 脚本。支持批量同步所有仓库,可以设置跳过特定仓库,并具有良好的错误处理机制。

由于 GitHub 仓库较多,因为各种原因担心数据风险和访问困难。代码托管在自建 gitea 虽然访问快,但是脱离了生态很难跟其他的 PaaS 平台对接。

于是就编写了一套脚本,这套脚本从 Github api 获取 repo 清单,逐个 mirror 后推送到 gitea,最后收集同步报告发送邮件通知。结合 crontab 可实现自动化的 git repo 同步备份。

花了一点时间来写,干脆分享出来,可以根据自己的需求定制。

22 Likes

早一点看到就好了,上周弄十个仓库镜像点都点累了

2 Likes

这个能同步issue这类吗?

2 Likes

之前好像有新闻,国内某公司这么干过

1 Like

感谢分享

感谢大佬分享

这个好,不怕github封号了

感谢分享。

实用工具,感谢分享

1 Like

先点赞,再收藏,这是个好方法

1 Like

厉害了佬

早看到就好了

感谢佬友分享

感谢分享!顺便提交了一个 PR,新增了支持飞书群 Webhook 通知的功能 ,期待审查和反馈

哇,感谢佬友贡献,等我抽空试一下

这个还没考虑,目前就是为了同步仓库。issue 这种我理解是不是对应用户比较困难,还得研究一下,目前我是跳过了

刚刚测试了一下,效果不错,已经合入。合入之后发现消息体处理有点问题,多行直接写入 curl 请求头会报错,改为使用 jq 处理再发送就正常了。

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。