用github管理自己的開源專案有幾年了,最近一年更新得比較多,倉庫也越來越多越來越大。有時候感覺github太慢,尤其是最近感覺更為明顯,於是萌生了再找個國內類似github的**託管平台的想法,同時我也還想持續更新github上的倉庫,於是需要乙個本地倉庫(我自己的開發機)多個遠端倉庫(github、碼雲、coding)。
我的拉取乙個開源專案dubbo乙個高效能rpc框架,git配置檔案.git/config如下:
macbook-pro-83:incubator-dubbo-flm lmfeng$ cat ./.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url =
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
新增乙個名為「upstream」的遠端倉庫:
git remote add upstream
執行完這條命令後.git/config檔案內容變成了:
macbook-pro-83:incubator-dubbo-flm lmfeng$ cat ./.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url =
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "upstream"]
url =
fetch = +refs/heads/*:refs/remotes/upstream/*
[branch "2.7.0-release"]
remote = upstream
merge = refs/heads/2.7.0-release
此時已經是乙個本地倉庫,兩個遠端倉庫。使用下面的命令可以分別從兩個遠端倉庫拉取和推送到兩個遠端倉庫。
git pull origin master
git pull upstream master
git push origin master
git push upstream master
輸入多條命令我都覺得麻煩,一條命令將當前分支同時更新到兩個遠端倉庫才能讓我滿意。於是改變一下,不用上面的做法,直接在origin中新增乙個url來實現乙個本地倉庫多個遠端倉庫。
git remote set-url --add origin url =
執行這條命令後.git/config內容變成:
macbook-pro-83:incubator-dubbo-flm lmfeng$ cat ./.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url =
fetch = +refs/heads/*:refs/remotes/origin/*
url =
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "upstream"]
url =
fetch = +refs/heads/*:refs/remotes/upstream/*
[branch "2.7.0-release"]
remote = upstream
merge = refs/heads/2.7.0-release
之前新增的「upstream」留著或刪掉都沒關係,這時候我們一條命令即可更新兩個遠端倉庫:
git push origin master
執行遠端倉庫操作需要輸入密碼是件比較麻煩的事情,在配置檔案的url裡配上使用者名稱和密碼即可免掉這樣的麻煩,提高操作效率。免輸密碼操作遠端倉庫還可以通過ssh方式實現,下面只給出https方式的免輸密碼配置:
url = https://$:[email protected]/thinkerfenglm/incubator-dubbo.git
把上面配置中的「$」和「$」用你的遠端倉庫使用者名稱和密碼代入即可。
上面通過git remote命令完成乙個本地倉庫多個遠端倉庫配置,這些命令實際上都是通過修改.git/config實現的,其實直接修改配置檔案可能會更快,我就是直接修改配置檔案完成。最後我的多個遠端倉庫配置如下:
Git 遠端倉庫
git 支援在本地倉庫進行程式專案的版本管理,這個本地的 git 倉庫在程式專案的資料夾內 也就是 git 資料夾內 隨著程式專案的推進,我們會把不同階段的檔案內容加入到這個 git 倉庫中。這個倉庫由我們直接操控,我們將它稱之為 本地 git 倉庫 除了 本地 git 倉庫 外,如果需要與他人共同...
git 遠端倉庫
1 github github的這個 就是提供git倉庫託管服務的,所以,只要註冊乙個github賬號,就可以免費獲得git遠端倉庫。由於你的本地git倉庫和github倉庫之間的傳輸是通過ssh加密的,所以,需要一點設定 第1步 建立ssh key。在使用者主目錄下,看看有沒有.ssh目錄,如果有...
git遠端倉庫
git遠端倉庫 目前我們使用到的 git 命令都是在本地執行,如果你想通過 git 分享你的 或者與其他開發人員合作。你就需要將資料放到一台其他開發人員能夠連線的伺服器上。新增遠端倉庫 1 git remote add shortname url 由於你的本地git倉庫和github倉庫之間的傳輸是...