请问下git如何push到两个不同仓库的不同分支呢?

2014-01-03 00:35:24 +08:00
 112582358
我的电脑上有一个git版本库,有没有可能是当我push到一个git服务器上面的时候同时也更新到另外一个git服务器?

如何添加两个不同仓库的不同分支呢?

比如说:
github的master,以及gitcafe的cafe-pages
14311 次点击
所在节点    git
11 条回复
yuan
2014-01-03 01:16:19 +08:00
acecode
2014-01-03 05:50:24 +08:00
git remote add github AAAAAA;(如果是clone下来的可以省略)
git remote add gitcafe BBBBBB;

git push github master:master;
git push gitcafe master:cafe-pages;
112582358
2014-01-03 09:15:23 +08:00
@acecode 感谢,如果需要两次push的话,其实跟分做两个项目也没多大差别把?现在最大的需求就是想一次push到两个仓库的两个分支,我再找找看~嘿嘿
112582358
2014-01-03 09:17:53 +08:00
@yuan
[remote "all"]
url=ssh://user@server/repos/g0.git
url=ssh://user@server/repos/g1.git

If you git push all now you push to all the remote urls.

根据你给的链接,这个方法的结果是一次push到两个不同的仓库的同一个分支把?这个已经实现过了哈,谢谢

现在的问题就是“一次push”,“不同仓库”的“不同分支”
112582358
2014-01-03 09:27:06 +08:00
@acecode
刚刚查阅了一下git的manpage(git push --help),想到一个问题,我们在cd /dir/to/repo到这个目录工作的时候,branch其实是已经确定了,那么要push到不同分支,只能在不同的目录工作,貌似我提的这个需求满足不了。。。难道只能提交到同一个分支吗
想了一下,您这个方案已经算是步骤的优化了,再次感谢~
ijse
2014-01-03 09:39:28 +08:00
写个Shell脚本不行吗?
acecode
2014-01-03 12:12:42 +08:00
@112582358
那要不配置个git alias?
或者加个push相关的hook?
从一个本地分支是可以推到远程两个不同分支的啊,不过拉回来可能会冲突
参照@yuan的那个用法,那是不是可以再分别写两个fetch 和pull 配置??[参考Refspec](http://git-scm.com/book/zh/Git-%E5%86%85%E9%83%A8%E5%8E%9F%E7%90%86-The-Refspec)
112582358
2014-01-03 14:57:24 +08:00
@ijse 比如说?大致是个什么流程呢,commit="xxx",然后cd dir1 ,push,然后cd dir2; push吗?

这样好没意思的说
ijse
2014-01-03 15:02:26 +08:00
@112582358 参考2L
binyuJ
2014-01-03 15:39:31 +08:00
$ cat up
#!/bin/bash

git commit -am "$1"
git push github master:master
git push gitcafe master:cafe-pages

我自己用的改了一下
连add commit 都省了,直接./up "something"
brickgao
2014-01-03 16:36:37 +08:00
用 @acecode 的办法吧
如果嫌要 push 两次麻烦就加个 hook

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

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

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

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

© 2021 V2EX