window下git多帳戶管理

如何配置一個git帳戶(尚未設置過git帳戶)

基本流程:設置git用戶名和郵箱-->生成SSH Key-->添加公鑰到git服務器(github或gitlab等)html

設置git用戶名和郵箱

git config --global user.name "用戶名"
git config --global user.email "郵箱"

注意git config命令的--global參數,用了這個參數,表示你這臺機器上全部的Git倉庫都會使用這個配置,固然也能夠對某個倉庫指定不一樣的用戶名和Email地址git

生成SSH Key

ssh-keygen -t rsa -C "郵箱"

而後一路回車,使用默認值便可,在用戶主目錄.ssh目錄下,會生成id_rsa和id_rsa.pub兩個文件。github

  • id_rsa(私鑰)
  • id_rsa.pub(公鑰)

添加公鑰到git服務器

id_rsa.pub裏面的內容添加到SSH Key中windows

如何配置多個git帳戶

暫時配了兩個,多個重複如下操做就行了O(∩_∩)O哈哈~
問題情景:公司代碼託管工具也是git而後有本身的gitlab服務器,若是沿用上面的配置服務器

git config --global user.name "用戶名"
git config --global user.email "郵箱"

務必會形成我的的git與公司的git不能同時存在,因此讓咱們來看看同一臺機器多個git如何配置ssh

假設第一次設置的是帳戶A,第二次設置的是帳戶B,如下用A,B來代稱。工具


基本流程:生成新的SSH Key->配置config文件->添加公鑰到另git服務器gitlab

生成新的SSH Key

ssh-keygen -t rsa -C "B郵箱"

注意:此次不能一直回車生成默認文件,由於文件同名會覆蓋,假設生成的文件名爲.net

  • B_id_rsa(私鑰)
  • B_id_rsa.pub(公鑰)

配置config文件

windows下新建一個txt文本,而後將名字後綴一塊兒改爲configcode

配置以下

# gitlab
Host git.A.com
    HostName git.A.com  //這裏填帳戶A的git網址
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa //第一次的私鑰名字(帳戶A的私鑰名字)
    User xxx //用戶名

# github
Host git.B.com
    HostName git.B.com //這裏填帳戶B的git網址
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/B_id_rsa //帳戶B的私鑰名字
    User xxx //用戶名

git配置解釋

每一個帳號單獨配置一個Host,每一個Host要取一個別名,每一個Host主要配置HostName和IdentityFile兩個屬性便可

Host的名字能夠取爲本身喜歡的名字,不過這個會影響git相關命令,例如:
Host mygithub 這樣定義的話,命令以下,即git@後面緊跟的名字改成mygithub
git clone git@mygithub:PopFisher/AndroidRotateAnim.git

HostName           //這個是真實的域名地址
IdentityFile         // 這裏是id_rsa的地址
PreferredAuthentications   //配置登陸時用什麼權限認證--可設爲publickey,password,publickey,keyboard-interactive等
User            // 配置使用用戶名

參考資料

相關文章
相關標籤/搜索