做者:shede333
主頁:http://my.oschina.net/shede333 && http://blog.sina.com.cn/u/1509658847
版權聲明:原創文章,版權聲明:自由轉載-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 3.0][]ios
通常來講,咱們爲git增長遠程庫,通常都是
git remote add origin <url>
( 你可使用真實的地址來代替 <url> )git
可是你可能想要把你的本地的git庫,既push到github上,又push到開源中國的Git@OSC上,怎麼解決呢。
有人可能會用兩個甚至多個遠程庫,即再添加一個遠程庫git remote add origin2
;
這個方法很低效,由於你要git push 兩次才能完成push到兩個庫。github
其實還有一個方法,git的一個遠程庫 能夠對應多個地址,即我能讓 遠程庫origin擁有多個url地址。 方法以下:fetch
首先,咱們從零開始, 假設你如今想要增長3個遠程庫地址,分別爲 :url
<url1> https://git.oschina.net/shede333/swioslibary.git
<url2> https://git.oschina.net/shede333/swscrollbar.git
<url3> https://github.com/shede333/CoreAnimationTestSW.git.net
首先,先增長第一個地址 git remote add origin <url1>
而後增長第二個地址 git remote set-url --add origin <url2>
增長第三個地址 git remote set-url --add origin <url3>
....依次類推code
這樣就完成了添加多個地址到origin庫中了, 之後只要使用git push origin master
就能夠一次性push到3各庫裏面了(使用git push
也可)blog
git remote set-url --add origin
就是往當前git項目的__config文件__裏增長一行記錄
__config文件__打開方式有兩種:rem
git config -e
你每執行一次git remote set-url --add origin
就會增長一行,以下圖:get
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鏈接。
我最近看見這篇文章也不錯,原理類似:將項目同時託管到Github和Git@OSC
有興趣的能夠看看