git 給遠程庫 添加多個url地址,giturl
目錄[-]
- 前提
- 使用流程
- 原理解析
- 注意
- Other
- 參考文章
作者:shede333
首頁:http://my.oschina.net/shede333 && http://blog.sina.com.cn/u/1509658847
著作權聲明:原創文章,著作權聲明:自由轉載-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 3.0][]
前提
一般來說,我們為git增加遠程庫,一般都是
git remote add origin ( 你可以使用真實的地址來代替 \ )
但是你可能想要把你的本地的git庫,既push到github上,又push到開源中國的Git@OSC上,怎麼解決呢。
有人可能會用兩個甚至多個遠程庫,即再添加一個遠程庫git remote add origin2;
這個方法很低效,因為你要git push 兩次才能完成push到兩個庫。
其實還有一個方法,git的一個遠程庫 可以對應多個地址,即我能讓 遠程庫origin擁有多個url地址。 方法如下:
使用流程
首先,我們從零開始, 假設你現在想要增加3個遠程庫地址,分別為 :
\ https://git.oschina.net/shede333/swioslibary.git
\ https://git.oschina.net/shede333/swscrollbar.git
\ https://github.com/shede333/CoreAnimationTestSW.git
首先,先增加第一個地址 git remote add origin
然後增加第二個地址 git remote set-url --add origin
增加第三個地址 git remote set-url --add origin
....依次類推
這樣就完成了添加多個地址到origin庫中了, 以後只要使用git push origin master 就可以一次性push到3各庫裡面了(使用git push也可)
原理解析
git remote set-url --add origin 就是往當前git項目的config檔案裡增加一行記錄
config檔案開啟檔案有兩種:
你每執行一次git remote set-url --add origin 就會增加一行,如:
git remote -v:顯示當前所有遠程庫的詳細資料,顯示格式為 遠程庫名字 url串連(類型)
所以說,你直接在config裡面直接添加url來修改也是可以的,不必去執行git命令。
注意
使用git push origin master時,你可以push到origin的多個url地址,
但是使用 git pull時,只能拉取origin裡的一個url地址(即fetch-url,如),這個fetch-url預設為 你添加的到origin的第一個地址,
如果你想更改,只需要更改config檔案裡,那三個url的順序即可,fetch-url會直接對應排行第一的那個utl串連。
Other
我最近看見這篇文章也不錯,原理相似:將項目同時託管到Github和Git@OSC
有興趣的可以看看
參考文章
IDEA/Git 設定多個push遠程倉庫或者同時提交多個push倉庫
來自於: http://my.oschina.net/shede333/blog/299032
http://www.bkjia.com/PHPjc/1114476.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1114476.htmlTechArticlegit 給遠程庫 添加多個url地址,giturl 目錄[-] 前提 使用流程 原理解析 注意 Other 參考文章 作者:shede333 首頁:http://my.oschina.net/shede333http:/...