(二十一)使用碼云

使用GitHub時,國內(nèi)的用戶經(jīng)常遇到的問題是訪問速度太慢,有時候還會出現(xiàn)無法連接的情況(原因你懂的)。

如果我們希望體驗Git飛一般的速度,可以使用國內(nèi)的Git托管服務(wù)——碼云gitee.com)。

和GitHub相比,碼云也提供免費的Git倉庫。此外,還集成了代碼質(zhì)量檢測、項目演示等功能。對于團隊協(xié)作開發(fā),碼云還提供了項目管理、代碼托管、文檔管理的服務(wù),5人以下小團隊免費。

碼云的免費版本也提供私有庫功能,只是有5人的成員上限。

使用碼云和使用GitHub類似,我們在碼云上注冊賬號并登錄后,需要先上傳自己的SSH公鑰。選擇右上角用戶頭像 -> 菜單“修改資料”,然后選擇“SSH公鑰”,填寫一個便于識別的標題,然后把用戶主目錄下的.ssh/id_rsa.pub文件的內(nèi)容粘貼進去:

點擊“確定”即可完成并看到剛才添加的Key:

如果我們已經(jīng)有了一個本地的git倉庫(例如,一個名為learngit的本地庫),如何把它關(guān)聯(lián)到碼云的遠程庫上呢?

首先,我們在碼云上創(chuàng)建一個新的項目,選擇右上角用戶頭像 -> 菜單“控制面板”,然后點擊“創(chuàng)建項目”:

項目名稱最好與本地庫保持一致:

然后,我們在本地庫上使用命令git remote add把它和碼云的遠程庫關(guān)聯(lián):

git remote add origin git@gitee.com:liaoxuefeng/learngit.git

之后,就可以正常地用git push和git pull推送了!

如果在使用命令git remote add時報錯:

git remote add origin git@gitee.com:liaoxuefeng/learngit.gitfatal:remote origin already exists.

這說明本地庫已經(jīng)關(guān)聯(lián)了一個名叫origin的遠程庫,此時,可以先用git remote -v查看遠程庫信息:

git remote -vorigin? ? git@github.com:michaelliao/learngit.git (fetch)origin? ? git@github.com:michaelliao/learngit.git (push)

可以看到,本地庫已經(jīng)關(guān)聯(lián)了origin的遠程庫,并且,該遠程庫指向GitHub。

我們可以刪除已有的GitHub遠程庫:

git remote rm origin

再關(guān)聯(lián)碼云的遠程庫(注意路徑中需要填寫正確的用戶名):

git remote add origin git@gitee.com:liaoxuefeng/learngit.git

此時,我們再查看遠程庫信息:

git remote -vorigin? ? git@gitee.com:liaoxuefeng/learngit.git (fetch)origin? ? git@gitee.com:liaoxuefeng/learngit.git (push)

現(xiàn)在可以看到,origin已經(jīng)被關(guān)聯(lián)到碼云的遠程庫了。通過git push命令就可以把本地庫推送到Gitee上。

有的小伙伴又要問了,一個本地庫能不能既關(guān)聯(lián)GitHub,又關(guān)聯(lián)碼云呢?

答案是肯定的,因為git本身是分布式版本控制系統(tǒng),可以同步到另外一個遠程庫,當然也可以同步到另外兩個遠程庫。

使用多個遠程庫時,我們要注意,git給遠程庫起的默認名稱是origin,如果有多個遠程庫,我們需要用不同的名稱來標識不同的遠程庫。

仍然以learngit本地庫為例,我們先刪除已關(guān)聯(lián)的名為origin的遠程庫:

git remote rm origin

然后,先關(guān)聯(lián)GitHub的遠程庫:

git remote add github git@github.com:michaelliao/learngit.git

注意,遠程庫的名稱叫g(shù)ithub,不叫origin了。

接著,再關(guān)聯(lián)碼云的遠程庫:

git remote add gitee git@gitee.com:liaoxuefeng/learngit.git

同樣注意,遠程庫的名稱叫g(shù)itee,不叫origin。

現(xiàn)在,我們用git remote -v查看遠程庫信息,可以看到兩個遠程庫:

git remote -vgitee? ? git@gitee.com:liaoxuefeng/learngit.git (fetch)gitee? ? git@gitee.com:liaoxuefeng/learngit.git (push)github? ? git@github.com:michaelliao/learngit.git (fetch)github? ? git@github.com:michaelliao/learngit.git (push)

如果要推送到GitHub,使用命令:

git push github master

如果要推送到碼云,使用命令:

git push gitee master

這樣一來,我們的本地庫就可以同時與多個遠程庫互相同步:

碼云也同樣提供了Pull request功能,可以讓其他小伙伴參與到開源項目中來。你可以通過Fork我的倉庫:https://gitee.com/liaoxuefeng/learngit,創(chuàng)建一個your-gitee-id.txt的文本文件,寫點自己學習Git的心得,然后推送一個pull request給我,這個倉庫會在碼云和GitHub做雙向同步。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 使用GitHub時,國內(nèi)的用戶經(jīng)常遇到的問題是訪問速度太慢,有時候還會出現(xiàn)無法連接的情況(原因你懂的)。 最重要的...
    darling323閱讀 7,467評論 2 4
  • 由于Git命令較多,將常使用的Git命令做一下整理與總結(jié)。 Git初始化設(shè)置git config --global...
    麥兜叮叮當閱讀 1,062評論 0 1
  • 這一側(cè),大基爾德綿延起伏,視野所及,全是平整的雪地,一望無際就像是山坡上撒著厚厚的糖霜。每邁出一步都會踩破一小片冰...
    石政陽閱讀 233評論 0 0
  • 《小強升職記》是鄒鑫著的一本職場故事書,作者通過故事的形式來講述工作上遇到的問題,這些因時間不夠、工作無序而每天忙...
    蘇小木堇Amy閱讀 1,868評論 0 24
  • 一.原來soul mate 都是有緣無份的,仙緣只限于精神層面,根本就無法淡定于一粥一飯的世俗生活中。你能想象賈寶...
    云居雁閱讀 164評論 0 0

友情鏈接更多精彩內(nèi)容