gitlab/gitee 等平台有办法设置自动拉取 github 仓库内容并同步吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LeeReamond
V2EX    GitLab

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

  •  
  •   LeeReamond 2022-02-24 18:55:52 +08:00 5325 次点击
    这是一个创建于 1325 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,联动首页热帖 t/836086

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

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

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

    17 条回复    2022-02-27 07:35:57 +08:00
    momocraft
        1
    momocraft  
       2022-02-24 18:58:15 +08:00
    gitlab 从前有 现在可能改没了

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

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

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

    检查更新状况,push 到其他平台。
    OrangeM21
        12
    OrangeM21  
       2022-02-25 03:43:35 +08:00 via iPhone
    我在自己 gitea 服务器上跑了个 docker ,1 小时一次同步到 gitea 上。你可以搜一下……
    OrangeM21
        13
    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
        14
    LeeReamond  
    OP
       2022-02-25 07:07:52 +08:00
    @blindpirate 感觉是可行方案,现在有点慌,感觉这些 actions 都可能被算作恶意利用
    loki13
        15
    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
        16
    lunny  
       2022-02-25 19:37:49 +08:00
    Gitea 既支持 pull mirror 也支持 push mirror
    qq296015668
        17
    qq296015668  
       2022-02-27 07:35:57 +08:00
    换个思路,既然会用 actions ,写个定时任务推送不就好了吗。
    担心安全问题就用第三方的 CI/CD 工具,利用 GitHub Webhooks 触发
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1146 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 17:49 PVG 01:49 LAX 10:49 JFK 13:49
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86