gitlab/gitee 等平台有办法设置自动拉取 github 仓库内容并同步吗?

2022-02-24 18:55:52 +08:00
 LeeReamond

如题,联动首页热帖 https://www.v2ex.com/t/836086

个人情况:github 算上私有仓库小一百个的样子,加上 star 的目录也有一些价值。个人感觉是如果 github 被清空那是比银行卡被清空还难受。

gh 抽风确实有些历史,偶尔能听到类似新闻。特别是我们这种使用 actions 做 ci 的,虽然没有任何违法乱纪活动,但是谁知道会不会突然抽风被封号,还有我也有一个小号用来储存 archive 的仓库,不知道会不会被误伤,确实有些吓人。

解决方案应该是托管至多平台的 git 服务,但是手动维护过于麻烦。有什么成熟解决方案可以让其他平台自动备份 github 吗?如果有的话,私有仓库又该咋办呢

4076 次点击
所在节点    GitLab
17 条回复
momocraft
2022-02-24 18:58:15 +08:00
gitlab 从前有 现在可能改没了

弄台 vps 定期 git fetch 也行
blindpirate
2022-02-24 18:59:47 +08:00
github action on push 然后 push 到其他平台不就完了?
LeeReamond
2022-02-24 19:01:53 +08:00
@blindpirate 那需要每次新建仓库都配置对应的 actions 文件,感觉不是正道
Citrus
2022-02-24 19:12:22 +08:00
Trim21
2022-02-24 19:14:01 +08:00
@LeeReamond #3 找一个仓库调用 api 镜像自己所有仓库就行了
mons
2022-02-24 19:15:38 +08:00
自建 Gitea 也有 repo mirror 功能。每个 repo 可以单独自定 sync 间隔

https://docs.gitea.io/en-us/repo-mirror/
LeeReamond
2022-02-24 19:17:40 +08:00
@Citrus 看起来它好像如果我新创建一个仓库它好像不能自动同步
Bingchunmoli
2022-02-24 19:18:32 +08:00
我用的 gogs 可以用
Citrus
2022-02-24 20:56:44 +08:00
@LeeReamond 那确实不能,必须手动在 GitLab 里导入一下。不过可以用机器人调用 API 。
Cbdy
2022-02-24 20:59:28 +08:00
blindpirate
2022-02-24 23:55:56 +08:00
@LeeReamond 新建一个 gh 仓库,配置一个定时任务。

在任务里,用 GH API iterate all repos in an organization 。如果需要私有仓库,配一个 PAT 即可。

检查更新状况,push 到其他平台。
OrangeM21
2022-02-25 03:43:35 +08:00
我在自己 gitea 服务器上跑了个 docker ,1 小时一次同步到 gitea 上。你可以搜一下……
OrangeM21
2022-02-25 03:49:26 +08:00
docker container run \
-d \
--net host \
--restart always \
-e GITHUB_USERNAME=username \
-e GITHUB_TOKEN={github_token}\
-e GITEA_URL=http://ip\
-e GITEA_TOKEN={gitea_token}\
jaedle/mirror-to-gitea:latest
LeeReamond
2022-02-25 07:07:52 +08:00
@blindpirate 感觉是可行方案,现在有点慌,感觉这些 actions 都可能被算作恶意利用
loki13
2022-02-25 14:11:15 +08:00
阿里云的代码服务 Codeup 有个导入仓库支持手动同步的功能,https://help.aliyun.com/document_detail/289096.html ,再用提供的 OpenAPI https://help.aliyun.com/document_detail/308248.html 配一下定时就行了吧
lunny
2022-02-25 19:37:49 +08:00
Gitea 既支持 pull mirror 也支持 push mirror
qq296015668
2022-02-27 07:35:57 +08:00
换个思路,既然会用 actions ,写个定时任务推送不就好了吗。
担心安全问题就用第三方的 CI/CD 工具,利用 GitHub Webhooks 触发

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/836237

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX