2017-06-08 60 views
1

想象一下我有4個倉庫:[A,B,C,D] 我想用一個簡單的git命令同時更新它們。在Github/Bitbucket上同步一個有三個不同來源的git倉庫

我想到用這樣的:

git push all 

任何想法?

+0

不知道什麼足以作爲「沒有任何努力」,但你有沒有嘗試添加A,B,C作爲D的遠程存儲庫(通過'git add '),然後在提交後僅向其中的三個推送(用'git push A master','git push B master'等等)? – TuringTux

+1

不清楚你想做什麼......你的意思是說''A','B'和'C'只是完全相同的代碼的不同分配點?或在不同的服務器上部署倉庫?或者它們包含三個不同的代碼庫,您想將合併其中的變化形式'D'? –

回答

1

只需添加所有回購作爲遙控器,使該推送到所有的人都像

git config alias.push-all '!git push remote-a && git push remote-b && git push remote-c' 

然後你可以使用git push-all推至所有遙控器的別名。如果由於非快進或其他原因而導致失敗,請解決問題並重新執行,或者單獨手動推送至遙控器。

+0

四個庫或四個分支? – sensorario

+0

OP詢問倉庫,而不是分行 – Vampire

0

的Git本身不具備這一點 - 它的命令永遠只能適用於事物的回購水平 - 但它在bash很簡單:

for repo in a b c d; do cd ~/$repo && git push; done 

在那裏替換爲「ABCD」與回購名或路徑,並相應地調整cd命令。你也可以把它包裝在一個shebang中。

相關問題