前幾天有次從github把項(xiàng)目 pull
到本地時(shí)速度特別慢卧斟,想著應(yīng)該是github服務(wù)器在國(guó)外的原因找都,于是就想把自己的項(xiàng)目在推送到github上時(shí)同步推送到國(guó)內(nèi)的某個(gè)代碼托管平臺(tái)能耻,經(jīng)過一番比較之后我選擇了碼云饿幅。
那么如何方便快捷的把代碼托管到多個(gè)平臺(tái)呢栗恩?
例如我有下面兩個(gè)倉庫:
https://gitee.com/jiaiqi/test.git
https://github.com/jiaiqi/test.git
第一種方式
在本地項(xiàng)目文件夾執(zhí)行 git init
之后
先添加第一個(gè)倉庫
git remote add origin https://gitee.com/jiaiqi/test.git
再添加第二個(gè)倉庫:
git remote set-url --add origin https://github.com/jiaiqi/test.git
如果還有其他,則可以像添加第二個(gè)一樣繼續(xù)添加其他倉庫市咆。
然后使用下面命令提交:
git push origin --all
打開.git/config蒙兰,可以看到這樣的配置:
[remote "origin"]
url = https://gitee.com/jiaiqi/test.git
fetch = +refs/heads/*:refs/remotes/origin/*
url = https://github.com/jiaiqi/test.git
剛才的命令其實(shí)就是添加了這些配置。如果不想用命令行针炉,可以直接編輯該文件,添加對(duì)應(yīng)的url即可赂苗。
第二種方式
在本地項(xiàng)目文件夾執(zhí)行 git init
之后
先添加第一個(gè)倉庫
git remote add gitee https://gitee.com/jiaiqi/test.git
再添加第二個(gè)倉庫:
git remote add github https://github.com/jiaiqi/test.git
在這里為了方便區(qū)分,我把github倉庫地址代號(hào)(上面代碼add后面的單詞)命名為github
猜谚,碼云倉庫地址代號(hào)命名為gitee
在git bash中輸入git remote -v
可以查看本地倉庫現(xiàn)在連接了那個(gè)遠(yuǎn)程倉庫昌犹。
使用git push 倉庫代號(hào) 分支
提交代碼到遠(yuǎn)程倉庫
剛才我鏈接的兩個(gè)遠(yuǎn)程倉庫斜姥,推得時(shí)候就要這樣寫了:
git push github master
git push gitee master
打開.git/config,此時(shí)配置文件如下所示
[remote "github"]
url = git@github.com:jiaiqi/test.git
fetch = +refs/heads/*:refs/remotes/github/*
[remote "gitee"]
url = git@gitee.com:jiaiqi/test.git
fetch = +refs/heads/*:refs/remotes/gitee/*
[branch "master"]
remote = gitee
remote = github
merge = refs/heads/master
和第一種方法一樣缚忧,如果不想用命令行闪水,可以直接編輯該文件球榆,添加對(duì)應(yīng)的remote及url即可。