基本流程:設置git用戶名和郵箱-->生成SSH Key-->添加公鑰到git服務器(github或gitlab等)html
git config --global user.name "用戶名" git config --global user.email "郵箱"
注意git config命令的--global
參數,用了這個參數,表示你這臺機器上全部的Git倉庫
都會使用這個配置,固然也能夠對某個倉庫指定不一樣的用戶名和Email地址。git
ssh-keygen -t rsa -C "郵箱"
而後一路回車,使用默認值便可,在用戶主目錄.ssh目錄下,會生成id_rsa和id_rsa.pub
兩個文件。github
將id_rsa.pub
裏面的內容添加到SSH Key中windows
暫時配了兩個,多個重複如下操做就行了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-keygen -t rsa -C "B郵箱"
注意
:此次不能一直回車生成默認文件,由於文件同名會覆蓋,假設生成的文件名爲.net
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 //用戶名
每一個帳號單獨配置一個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 // 配置使用用戶名