Git使用ssh密鑰

說明

git支持https和git兩種傳輸協(xié)議,github分享鏈接時(shí)會(huì)有兩種協(xié)議可選,如果使用https協(xié)議,每次pull, push都會(huì)提示要輸入密碼,如果使用git協(xié)議,然后使用ssh密鑰,這樣免去每次都輸密碼的麻煩。

方法

Git服務(wù)器都會(huì)選擇使用SSH公鑰來進(jìn)行授權(quán)。系統(tǒng)中的每個(gè)用戶都必須提供一個(gè)公鑰用于授權(quán),沒有的話就要生成一個(gè)。生成公鑰的過程在所有操作系統(tǒng)上都差不多。

1.生成密鑰對(duì)

$ cd ~/.ssh
$ ls
id_rsa known_hosts    id_rsa.pub
# 查看一下是否有id_rsa和id_rsa.pub(或者名稱相同之類成對(duì)的文件),.pub 后綴的文件就是公鑰,另一個(gè)文件則是密鑰。

如果沒有對(duì)應(yīng)的文件,可以用ssh-keygen來創(chuàng)建

$ ssh-keygen -t rsa -C "your_email@youremail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/用戶名/.ssh/id_rsa):
#這邊可以直接按Enter或者輸入你要命名的文件名稱

然后,會(huì)提示你輸入密碼,如下:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
# 建議輸一個(gè),安全一點(diǎn),當(dāng)然不輸也行

設(shè)置好之后,如下

Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.

到此為止,你本地的密鑰對(duì)就生成了。

2.將SSH Key添加到ssh-agent

$ ssh-agent -s
$ ssh-add ~/.ssh/id_rsa
Identity added: /Users/用戶名/.ssh/mayun (/Users/用戶名/.ssh/id_rsa)
#如果新增的文件名稱自定義 則這邊id_rsa需要改成自定義的名稱

可以查看ssh-agent中的密鑰,檢測(cè)是否添加成功

$ ssh-add -l
2048 SHA256:21d3d5dEQ6urjtWVz/PYTTwshYUd40f6LpktHpxubA /Users/用戶名/.ssh/mayun (RSA)

還可以從ssh-agent中刪除多余的密鑰

 $ ssh-add -d ~/.ssh/mayun.pub
 Identity removed: /Users/用戶名/.ssh/mayun (your_email@youremail.com)

3.添加公鑰到你的遠(yuǎn)程倉庫(如github)

  • 查看你生成的公鑰:
    $ cat ~/.ssh/id_rsa.pub
    ssh-rsa AAAAtQ24lCDDtfqGx1k6SzXGiMaFC1yc2EAAAADAQABAAABAQCvv5eOTiFwkvoZtkotddOCo+uMGFrfkMssUbyRRYnYmp2l6hO8cZsrsQm0hwoZvpneCk6VB5G6CK+ULG5kwlKfTcdzQOEPy4WkRE8jhRhtR5QLZiqWN20dxTAXismXHYv7wQAbRcfuM7Z+RQvwBj46B3NzaRIxJsIZV4sVVq66rILGvcrbxH2wASLvnFoJhb43/29BxXGBxLPBC7Z5ej2+5T13JKj4+drDaluwoZSA1FMG0trq6OZwHdN+/isxgwrF8UpZOvtPq0GnRYjXG0GYI2xuUhpmxF37BfkB9KDE1lZ035zDNWJJf7OBaPQJ7kfJR your_email@youremail.com
    
  • 登陸你的github帳戶,在Settings找到SSH and GPG keys選項(xiàng),然后New SSH key
  • 接著復(fù)制上面的公鑰內(nèi)容,粘貼進(jìn)“Key”文本域內(nèi),title隨意命名
  • 點(diǎn)擊 Add key

4 驗(yàn)證下新增的key是否有生效

$ ssh -T git@github.com

如果看到如下

Welcome to GitLab,***!

恭喜你,你的設(shè)置已經(jīng)成功了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 有必要先來了解什么是SSH和什么是SSH key。 SSH Secure Shell (SSH) 是一個(gè)允許兩臺(tái)電...
    faner閱讀 48,058評(píng)論 1 48
  • 前提是你已經(jīng)在Linux服務(wù)器上安裝了git SSH(2019.01.31補(bǔ)) SSH是一種協(xié)議標(biāo)準(zhǔn),其目的是實(shí)現(xiàn)...
    shuaiutopia閱讀 4,540評(píng)論 0 2
  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,863評(píng)論 9 163
  • 第一部分:Git的基本操作 初始化操作 $ git config -global user.name #設(shè)置提交...
    莊欲以莘閱讀 2,103評(píng)論 0 4
  • ——2012年3月《上海電視》B刊 《大漠謠》最早公布的男主演就是胡歌。之前粉絲一邊倒地認(rèn)為他會(huì)出演完美男人霍去...
    hugh_diary閱讀 485評(píng)論 0 0

友情鏈接更多精彩內(nèi)容