分別有倉庫 A(github),B(JAE 的 git),本機為C。
假設以 a 倉庫作為最終的使用倉庫, b為發布倉庫。分支都為 dev
第一步,增加遠程倉庫
git remote add origin1 git.a
git remote add origin2 git.b
第二步,本地確保沒 change 的東西,拉去遠程倉庫地址,然后進行 rebase 。
git fetch origin1
git rebase -i origin1/dev
如果有沖突,解決完。
git push -f origin1 dev git push -f origin2 dev
done.
==================================================
一份代碼推送到多倉庫
通過谷歌、度娘可以很快的找到一大堆關於git如何配置推送到多倉庫,配置我就不在啰嗦了,直接打開 .git\config
文件添加或看命令:
git remote set-url --add origin https://www.xxx.com/xxx/xxx.git
配置是好了,但是我找了半天也沒找到在兩個或多個倉庫建好之后是如何初始化,舉個栗子: A
為你現在正在使用的遠程倉庫,里邊已有用繩命敲的碼; B
為新建的空的、null、empty的遠程倉庫。那么問題來了: 怎么才能把兩個遠程倉庫代碼同步?以便以后可以代碼同時推送到這兩個倉庫。
這就是答案、答案、答案
直接在命令行敲:
git push -f origin master
注釋: origin
遠程倉庫名, master
分支名, -f
為force,意為:強行、強制。
這行命令的意思就是強制用本地的代碼去覆蓋掉遠程倉庫的代碼,敲 git push --help
可查看官方的解釋(英文的)。當然不止這一種操作方式了,但是這種操作是最快速的,不會有沖突什么的,當然我也有一個忠告:請謹慎使用!請謹慎使用!請謹慎使用!
======================================================
Git一鍵推送多個遠程倉庫
做一個工程,有可能會添加了多個遠程倉庫,在推送到遠程倉庫時,如果一個一個地Push,比較麻煩,有沒有簡單點的呢,可以使用一條命令Push多個遠程倉庫呢?
比如我做了一個commonuseppa的工程,添加了三個遠程倉庫,如何使用一條命令Push到這三個遠程倉庫中呢?
編輯本地倉庫的.git/config文件即可達到目的。
[remote "all"] url = git@github.com:luoshupeng/commonuseppa.git url = git@gitcafe.com:chinesedragon/commonuseppa.git url = chinesedragon@gitcd.com:/commonuseppa
這樣,使用git push all即可一鍵Push到多個遠程倉庫中。