Git 配置多個 SSH-Key 時遇到的問題
摘要
公司代碼倉庫選用了碼雲1 ,個人的代碼倉庫用了 GitHub2 。
使用 HTTPS
的話,每次需要輸入賬號密碼,十分影響效率。
下面總結一下,多次配置 SSH
遇到的問題以及得出的個人看法。
參考
關於一些概念的個人看法
- SSH 是啥?
SSH 是種途徑、方法,比如需要開門,可以直接推門進也可以用鑰匙開鎖進門。
使用了 SSH 就相當於只能開鎖才能進門了,安全性自然會高一點。 - 從零開始
首先,最最開始,門上沒鎖、手上也沒鑰匙的時候,我們就需要 生成密鑰 了。
雖是生成密鑰
,實則給我們生成了鎖 = 「公鑰」
、鑰匙 = 「私鑰」
以及一本記錄房子地址的本子 = 「known_hosts文件」
。 - 爲某間房子的門裝鎖
也就是添加SSH公鑰
了。需要去代碼倉庫後臺設置去操作。具體操作各個倉庫都大同小異,按照文檔指引操作即可。 - 試一試能不能開鎖進門?
這裏可能出現一些小問題,就寫在了文末,不再贅zhuì述了。 - -!
個人所得
1. git 的實用命令:
(1) 查看遠程倉庫地址
$ git remote -v
(2) 刪除遠程倉庫
$ git remote remove origin
(3) 查看 git 的配置
$ git config --list
2. SSH 相關:
(1) 測試
$ ssh -T [email protected]
$ ssh -T [email protected]
(2) known_hosts 的看法
關於在路徑 ~/.ssh/
文件夾下的 known_hosts
文件,大概是在本機首次使用安全連接(SSH)與未知 IP 進行通信時寫入的記錄。所以如果首次連接詢問:
$ ssh -T [email protected]
> The authenticity of host 'github.com (13.250.177.223)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
RSA key fingerprint is MD5:16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
時,我們直接回車鍵(仔細看確實沒有默認值的┑( ̄Д  ̄)┍),大概就會報以下驗證失敗了:
> Host key verification failed.
正確的應該老實打上 yes,在不該的地方偷懶了我反省,然後就如下啦:
Are you sure you want to continue connecting (yes/no)? yes
> Warning: Permanently added 'github.com,13.250.177.223' (RSA) to the list of known hosts.
Hi your_username! You've successfully authenticated, but GitHub does not provide shell access.
翻譯一下,也更好地理解 known_hosts
的這個文件的作用了。