工做中每每咱們會遇到這種狀況, 公司給了郵箱, 採用相似gitlab
之類的git
服務託管商, 而咱們又擁有本身的github
帳戶. 閒暇之餘, 咱們但願能將我的開源項目或者學習筆記之類的託管到github
上, 這時就涉及到git
的多帳號配置了. python
具體流程git
ssh-keygen -t rsa -C test@test.com
, 生成祕鑰, 注意不要覆蓋原有的祕鑰文件(生成時候從新命名該祕鑰文件, 其它直接默認便可)ssh-add -l
查看當前電腦已經添加了多少用戶標識(也就是祕鑰), .ssh
下的id_rsa
文件(首次新建的祕鑰文件)不添加也可被git
感知ssh-add ~/.ssh/id_rsa_custom
, 添加自定義的祕鑰, 若報錯, 請使用ssh-agent bash
開啓bash
環境代理來執行相關的git
命令.ssh
目錄下的config
文件, 不存在則新建便可. 該文件內容以下:Host git@github.com
HostName https://github.com
User git
IdentityFile ~/.ssh/id_rsa_custom複製代碼
Host
爲你的HostName
的別名, 可自定義使用(若自定義後則執行克隆時候, 使用git clone custom_name:xxx/xxx.git
, 其它操做相似)HostName
爲你的git
服務託管商網址, 我這邊直接選擇的是github
User
表示你採用的是那種代碼託管服務, 這裏採用git
IdentityFile
爲你的祕鑰文件(帶上路徑)ssh -T git@github.com
測試自定義的帳號是否配置成功git
是須要你提供你的emai
, 此時能夠將主要開發的郵件設置爲全局的(git config --global user.email primary@primary.com
, 設置全局用戶名git config --global user.name primary_name
). 若是在你的開源工程或者學習工程不想使用該郵件, 則進去該工程根目錄下, 執行git config user.email test@test.com
以及git config user.name test
. 此時改工程下的用戶名和郵件會取代全局的用戶名和郵件bug記錄github
question
: fatal: refusing to merge unrelated histories
method
: git pull origin master --allow-unrelated-histories