git 多用戶配置(多用戶 & 公司/我的)

多用戶配置

公司和github,常常會遇到要多用戶使用git的狀況,如下爲配置信息,如下拿xiaoxuete1 & xiaofute2舉例

設置ssh-key

ssh-keygen -t rsa -C "xiaofute1@mail.com"
  • 會提示存儲的文件名,輸入
  • 若是須要push時確認的密碼,可在該步驟輸入
  • .pub文件內容複製到github的ssh-key配置中(勿忘,不然鏈接不上

配置config文件

新建config 文件,用來指定不一樣的用戶讀取的rsa文件 // 註釋部分須要刪除
# Default user
Host coding  // host地址對應的別名,切換用戶使用該名稱
HostName xxx.xx.xx.xx // host地址 我這裏填的是公司搭建的git倉庫的ip地址
User xiaofute1 
IdentityFile ~/.ssh/id_rsa_default  // ssh-key文件地址 默認只會讀取id_rsa

# second user
Host github
HostName github.com
User xiaofute2
IdentityFile ~/.ssh/id_rsa_github

切換用戶

// 這裏就用到了配置文件中的host對應的字段
ssh -T git@github 

// 輸出表示成功
Hi xiaofute2! You've successfully authenticated, but GitHub
does not provide shell access.

驗證出錯

驗證過程當中出現 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).git

刪除 known_hosts 文件。執行如下命令github

ssh -T -v git@xxx.xx.xx.xx

用戶名配置

全局

git config --global user.name "xiaofute1"
git config --global user.email "xiaofute1@mail.com"

本地

本地倉庫文件夾下配置用戶名 會在當前倉庫中提交試用該用戶信息提交,覆蓋全局的配置、
git config  user.name "xiaofute2"
git config  user.email "xiaofute2@mail.com"
  • 由於個人全局配置的爲default user的用戶名和郵箱,在github上的commits history中會link不到用戶,因此每次git init 後須要配置該本地倉庫的用戶信息
相關文章
相關標籤/搜索