使用碼雲(十七)
使用 GitHub 時,國內的使用者經常遇到的問題是訪問速度太慢,有時候還會出現無法連線的情況(原因你懂的)。如果我們希望體驗Git飛一般的速度,可以使用國內的Git託管服務——碼雲(gitee.com)。
和GitHub相比,碼雲也提供免費的Git倉庫。此外,還集成了程式碼質量檢測、專案演示等功能。碼雲官網有詳細的對比,對於團隊協作開發,碼雲還提供了專案管理、程式碼託管、文件管理的服務,5人以下小團隊免費。
碼雲的免費版本也提供私有庫功能,只是有5人的成員上限。
使用碼雲和使用 GitHub 類似,我們在碼雲上註冊賬號並登入後,需要先上傳自己的SSH公鑰。選擇右上角使用者頭像 -> 選單欄選擇“設定”,然後選擇“SSH公鑰”,填寫一個便於識別的標題,然後把使用者主目錄下的 .ssh/id_rsa.pub
點選 “ 確定 ” 即可完成並看到剛才新增的 Key ,如下:
如果我們已經有了一個本地的git倉庫(例如,一個名為myApp的本地庫),如何把它關聯到 碼雲 的遠端庫上呢?
首先,我們在碼雲上建立一個新的專案,選擇右上角使用者頭像 的 + -> 選單“新建專案”,然後點選“新建專案”,如下:
專案名稱最好與本地庫保持一致;
然後,我們在本地倉庫上使用命令 git remote add 把它和碼雲的遠端倉庫關聯,如下:
之後,就可以正常地用 git push 和 git pull 推送了 !
如果在使用命令 git remote add
這說明本地倉庫已經關聯了一個名叫 origin 的遠端倉庫,此時,可以先用 git remote -v 檢視遠端倉庫資訊,如下:
可以看到,本地倉庫已經關聯了 origin 的遠端倉庫,並且,該遠端倉庫指向 GitHub 。
我們可以刪除已有的 GitHub 遠端倉庫,如下:
再關聯碼雲的遠端倉庫(注意路徑中需要填寫正確的使用者名稱),如下:
此時,我們再檢視遠端倉庫資訊,如下:
現在可以看到,origin 已經被關聯到碼雲的遠端倉庫了。通過 git push 命令就可以把本地倉庫推送到 gitee上。
有的小夥伴又要問了,一個本地倉庫能不能既關聯GitHub,又關聯碼雲呢?
答案是肯定的,因為 git 本身是分散式版本控制系統,可以同步到另外一個遠端倉庫,當然也可以同步到另外兩個遠端倉庫。
使用多個遠端倉庫時,我們要注意,git 給遠端倉庫起的預設名稱是 origin ,如果有多個遠端倉庫,我們需要用不同的名稱來標識不同的遠端倉庫。
仍然以 myApp 本地庫為例,我們先刪除已關聯的名為 origin 的遠端倉庫,如下:
然後,先關聯 GitHub 的遠端倉庫,如下:
注意,遠端倉庫的名稱叫 github,不叫 origin 了。
接著,再關聯碼雲的遠端倉庫,如下:
同樣注意,遠端倉庫的名稱叫 gitee ,不叫 origin 。
現在,我們用 git remote -v 檢視遠端倉庫資訊,可以看到兩個遠端倉庫,如下:
如果要推送到 GitHub ,使用命令 git push github master ,如下:
如果要推送到 碼雲 ,使用命令 git push gitee master ,如下:
推送失敗了,根據圖上指示輸入命令 git pull ;接下來,再輸入命令 git pull <remote> <branch>,如下:
因為 碼雲 新建專案後會自動建立一個readme檔案,這樣造成遠端倉庫和本地倉庫的檔案不匹配,需要先 git pull 下抓取最新的 gitee 庫裡的檔案,然後才能 git push 本地倉庫到遠端 ;
這樣一來,我們的本地倉庫就可以同時與多個遠端倉庫互相同步,如下:
碼雲也同樣提供了 Pull request 功能,可以讓其他小夥伴參與到開源專案中來。你可以通過 Fork 廖老師的倉庫:https://gitee.com/liaoxuefeng/learngit,建立一個 your-gitee-id.txt 的文字檔案,寫點自己學習Git的心得,然後推送一個pull request給我,這個倉庫會在碼雲和GitHub做雙向同步。
轉自:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000