公鑰 私鑰
當(dāng)我們關(guān)聯(lián)好自己的git時(shí)层玲,發(fā)現(xiàn)每次pull 或 push代碼時(shí)會(huì)讓我們重復(fù)性輸入自己的密碼,問題不是出在我們關(guān)聯(lián)的不對(duì),而是對(duì)git的公鑰和私鑰了解并不深宰闰,使用命令ssh-keygen,默認(rèn)生成的公鑰名為id_rsa.pub 簿透,私鑰名為id_rsa移袍。
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx
NrRFi9wrf+M7Q== schacon@mylaptop.local
解決
終端提示:Enter passphrase for key,表示我們對(duì)自己的git使用了私鑰老充,在公鑰的基礎(chǔ)上又加了一道保障葡盗,所以會(huì)出現(xiàn)重復(fù)性輸入密碼,切換到文件==cd ~/.ssh==下會(huì)有id_rsa啡浊,id_rsa.pub觅够,known_hosts三個(gè)文件,使用命令rm id_rsa* 刪除我們的私鑰巷嚣,cd ... 切換目錄喘先,執(zhí)行==ssh-keygen -t rsa -C "你的郵箱" -b 4096==一路回車鍵,出現(xiàn)
+---[RSA 2096]----+
|.o ....+ |
|o .. . .=o..o |
|.E. . .. oo . |
|=.o . |
|.* S o o |
|. o . . + o . |
|..o+ = o |
|..=o=.* . |
|..+B=X+o |
+----[SHA256]-----+
然后重新進(jìn)入cd ~/.ssh該文件廷粒,執(zhí)行cat id_rsa.pub將出來的那一串編碼復(fù)制粘貼到你的遠(yuǎn)程git上建立關(guān)聯(lián)窘拯,完成。
其他
以上是我開發(fā)中遇到的問題坝茎,查閱過一部分資料沒有得到實(shí)際性的解決涤姊。如果上述還是沒有解決,嘗試一下其他人的辦法嗤放,依舊是在本地執(zhí)行ssh-a -K
回車輸入自己的密碼砂轻,或者依次執(zhí)行eval ssh-agent
ssh-add
命令,這些命令只能解決在你當(dāng)前開機(jī)的狀態(tài)下斤吐,不在輸入你的git密碼搔涝,在你再次關(guān)閉你的設(shè)備、重啟之后和措,依舊會(huì)提示你輸入,不妨試試上面的解決辦法庄呈。