【问题标题】:Can i push into two remote repository in the same command line?我可以在同一命令行中推送到两个远程存储库吗?
【发布时间】:2019-09-19 09:52:02
【问题描述】:

我想通过同一命令将我的代码在两个不同的远程存储库中推送和同步到 Gitlab 和 Github,可以吗?

【问题讨论】:

  • 尝试直接向两者推送会变得复杂。如果两者都有积极的开发,他们可能会与彼此以及您自己的存储库不同步。相反,我建议将其中一个声明为完成新工作的“活动”存储库,另一个声明为只读“镜像”。像往常一样推送到活动存储库。设置活动存储库的新克隆,保证清除任何本地提交,并定期将git push --mirror 镜像到镜像。

标签: git github gitlab


【解决方案1】:

是的。只需为您的工作副本定义两个遥控器:

git remote add lab https://gitlab.com/...
git remote add hub https://github.com/...

Push 将存储库作为参数:

git push lab master
git push hub master

【讨论】:

  • 单行git push lab master;git push hub master :)
  • 甚至for repo in $(git remote) ; do git push "$repo" master ; done ...
  • 如果您有超过 2 个可能会搞砸的遥控器。尽管如此,您应该只有权推送到这 2 个遥控器。
【解决方案2】:

让我推荐这个push-to-all-remotes别名:

git config [--global] alias.push-to-all-remotes '!git remote | xargs -I% -n1 git push %'

用法:git push-to-all-remotes master

取自gitalias.com(完全披露:我是那里的贡献者)。

【讨论】:

    猜你喜欢
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-05
    • 1970-01-01
    • 2019-09-18
    • 2011-02-28
    • 2021-09-18
    相关资源
    最近更新 更多