設置步驟:
1,本地進入.ssh查看是否存在密鑰對:xxx和xxx.pub
命令:cd ~/.ssh
2,如果不存在,使用ssh-keygen來創建
命令:ssh-keygen -t rsa -C "youremail@youremail.com"
例如:ssh-keygen -t rsa -C "wanwan5856@163.com"
注解:
Enter file in which to save the key 輸入保存秘鑰的文件 直接enter即可
Enter passphrase (empty for no passphrase) 輸入密碼 直接enter即可
此時查看.ssh目錄下可看到新增的一對秘鑰id_rsa和id_rsa.pub
3,查看公鑰
命令: cat ~/.ssh/id_rsa.pub
復制全部,包括后面的郵箱
4,添加到gitlab中
左側欄Profile Settings → 左側欄SSH Keys → 粘貼並Add key
5,創建config,端口為22可忽略這一步
命令:cat>~/.ssh/config
輸入:
Host gitlab.xxx.com
User git
Port 458
IdentityFile /home/yourname/.ssh/id_rsa(替換成你的id_rsa所在的路徑)
6,更改remote
使用git remote -v查看origin和upstream的url,把http更改為ssh地址,命令:git remote set-url origin(或者upstream) xxxx
例如:
git remote set-url origin git@gitlab.xxxx.com:xxx/server.git
git remote set-url upstream git@gitlab.xxxx.com:enterprise/server.git
7,驗證是否設置成功
命令:ssh -T git@gitlab.xxxxxxxx.com
顯示Welcome to GitLab, yourname! 代表成功。
以上總結的是http改為ssh,若是一開始clone就是以ssh方式訪問,方法見下:
同樣第5步根據需要選擇配置與否。
第6步改為
git clone git@gitlab.xxxx.com:xxx/server.git clone遠程倉庫到本地,稱為origin
git remote add upstream http://gitlab.xxxx.com/enterprise/server.git 添加upstream
最后再總結一下fork,origin,upstream的關系吧:
成為一個項目的新成員,需要在原項目的基礎上進行開發,fork就是復制原項目一份給自己,fork不會自動更新,也就是說fork放着不管的話代碼最后一次一直停留在復制出它的那一刻。
origin即自己的遠程倉庫
upstream用於與原項目保持聯系,更新到最近的修改。