我想在同一行中执行git push origin
和git push my_other_remote
。可能?Git:在一个命令中推送到两个回购
回答
您可以通过为您的origin
远程设备添加额外的推送URL来获得相同的效果。例如,如果您现有的遥控器的网址如下:
$ git remote -v
origin [email protected]:something.git (fetch)
origin [email protected]:something.git (push)
my_other_remote git://somewhere/something.git (fetch)
my_other_remote git://somewhere/something.git (push)
你可以这样做:
git remote set-url --add --push origin git://somewhere/something.git
然后,git push origin
将推动两个库。但是,为避免混淆,您可能需要为此设置一个名为both
的新远程设备。例如:
git remote add both [email protected]:something.git
git remote set-url --add --push both [email protected]:something.git
git remote set-url --add --push both git://somewhere/something.git
...然后:
git push both
...会尽量推到两个库。
这是否也会更新'remote/origin'和'remote/my_other_remote'跟踪分支? – 2011-04-11 12:02:27
@PaŭloEbermann:我的(非常简短的)测试表明'refs/remotes/origin/master'和'refs/remotes/my_other_remote/master'将在两者的URL作为推送URL添加的情况下被更新到'origin'并且你做'git push origin'。 – 2011-04-11 13:21:55
这看起来可能像我正在寻找的,但我仍然有点混淆......如果我想要将我的应用程序提交给Heroku,还有BitBucket,该如何继续?首先,我必须创建回购协议到Heroku,然后以同样的方式在BitBucket上创建回购,或者正确的方法是什么? – user984621 2012-03-04 10:33:12
你可以把在.git/config
文件中的以下内容:
[remote "both"]
url = url/to/first/remote
url = url/to/other/remote
现在可以使用git push both
推到这两个URL。
如果你也想获取从他们(sync用有用),你可能在你的.git/config
文件中添加以下行:
[remotes]
both = origin, other
现在你也可以运行git fetch both
。
是您提供的基本上与Mark一样的解决方案(除非您通过手动编辑来完成),还是还有其他区别? – 2015-04-29 15:22:15
没有区别。 – silvio 2016-03-08 13:44:38
- 1. 推一个本地git回购到另一个在线git回购(如github)
- 2. 从Git回购一次,将推到另一个回购
- 3. Git推送命令
- 4. 不能推,git一个回购,一个用户,两台电脑
- 5. 从一个命令中的几个回购Git拉
- 6. 如何推送到git-svn回购?
- 7. 无法推送到本地git回购
- 8. Git有两个远程回购站,一个git,一个svn
- 9. 无法推送在远程git回购
- 10. 将Subgit git回购推送到远程GitHub回购/服务器
- 11. 在一个文件夹中使用两个git回购
- 12. 在同一个目录中的两个不同的Git回购
- 13. 在Git中使用两个回购和两个项目
- 14. 更新远程Git回购推送
- 15. 执行两个命令到R中的一个命令中
- 16. GIT - 从另一个回购
- 17. 标记一个git回购?
- 18. CtrlP:一个git回购
- 19. git只推送一个文件到Heroku
- 20. 要找到一个Git回购其ID
- 21. Git在一个命令中提交并推入Netbeans
- 22. 在另一个回购中克隆部分Git回购
- 23. 从回购克隆然后推送到另一个
- 24. 只推送一个文件夹到远程回购
- 25. 无法使用Git的推送命令
- 26. 推失败的git:'凭证缓存'不是一个git命令
- 27. 合并git回购到另一个回购
- 28. Git命令发布我的整个桌面回购
- 29. 多个git帐户,错误的git帐户推到我个人的回购
- 30. 将SVN函数作为第二个(远程)回购来推送到Git?
我不认为你可以使用标准命令做到这一点,但你可以写一个'git-multipush'或其他东西并使用它。 – 2011-04-11 11:26:02
[从多个远程位置拉出/推送]可能重复(http://stackoverflow.com/questions/849308/pull-push-from-multiple-remote-locations) – techraf 2016-08-20 00:30:33