1.前言
為什么要配置github和gitee共存的環境?對我來說,首先,github的訪問速度比較慢,相應的使用git提交的速度也比較慢,雖然通過修改HOSTS可以對訪問速度慢的問題有一定的改善,但是速度終究不能讓人滿意.而使用gitee則可以很好地避免這個問題.其次,github對我更大的作用是尋找一些大型的開源項目,而gitee因其速度優勢可以作為我的個人項目雲平台,這樣我在windows和Linux的代碼就可以很方便地通過gitee進行同步.
2. SSH配置
2.1清除已有的git配置
如果你之前已經安裝了git,並且也配置過了全局的user.name
和user.email
,那么現在就應該講這些配置全部清除,清除方法如下:
git config --global --unset user.name "YourName"
git config --global --unset user.email "YourEmail"
2.2生成新的SSH Keys
(1)github密鑰
進入~/.ssh
目錄下,輸入命令,直接兩次回車即可.會在文件夾下生成github_id_rsa
和github_id_rsa.pub
.
ssh-keygen -t rsa -C "YourGIthubEmail@mail.com" -f "github_id_rsa"
之后運行命令cat github_id_rsa.pub
輸出文件公鑰內容,復制公鑰內容並添加到github的SSH Keys中保存.
(2)gitee密鑰
與github生成密鑰的操作類似
ssh-keygen -t rsa -C "YourGiteeEmail@mail.com" -f "gitee_id_rsa"
復制公鑰gitee_id_rsa.pub
公鑰的內容,並添加到gitee的SSH Keys中保存.
2.3創建config文件避免ssh沖突
在~/.ssh
文件夾下新建config
文件,添加以下內容
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
3.測試
執行ssh -T git@github.com
,如果返回successfully
則github配置成功.
執行ssh -T git@gitee.com
,如果返回successfully
則gitee配置成功.
4.倉庫配置
以gitee為例,首先在gitee代碼倉庫里先新建一個repository.然后在本地新建一個與repository名字相同的文件夾,輸入命令git init
初始化git,然后進行local配置
git config --local user.name "giteeUserName"
git config --local user.email "giteeUserEmail"
然后將本地倉庫連接到遠程的gitee服務器,可以使用如下命令添加:
git remote add origin <倉庫地址>
補充
Git共有三個級別的config文件,分別是system(系統級別)、global(用戶級別)和local(當前倉庫)。system配置整個系統只有一個,global配置每個賬戶只有一個,而local配置和git倉庫的數目相同,並且只有在倉庫目錄才能看到該配置。
可通過如git config --local --list
命令來查看倉庫配置信息,global和system類似.