問題
在 gitlab 里已經配置里 ssh-keys腰埂,但是使用 ssh clone 項目的時候需要如下一樣的輸入密碼蜈膨,而且無論輸入什么都不對導致無法 clone 項目。
解決辦法
一. 使用 http 方式 clone
這個辦法就是快速解決 clone 項目的翁巍,直接使用 git clone http://xxx.com/yyy/zzz.git ,只需要 輸入一次 gitlab 賬號密碼就行。
二. 配置 ssh 的 config 文件
可能有些童鞋就是想用 ssh clone肝断,不然就難受,比如鄙人胸懈,這個時候你可以看一下,在 .ssh/ 里面是否配了多個 id_rsa.pub涌献,我就是之前配了一個自用 ssh-key羔挡,默認為id_rsa,所以新生成了個公司用的 id_rsa_sh绞灼,gitlab上配置的就是這個 id_rsa_sh,從而導致的這個問題印叁。
解決辦法就是在 .ssh/ 下的 config 文件里加上你新增的 ssh-key军掂,如下:
# GitLab.com server
Host xxx.com
RSAAuthentication yes
IdentityFile /Users/maple/.ssh/id_rsa_sh
這里的 id_rsa_sh 改為你自己的 ssh-key 就行了。如果沒有 config 文件就 touch 一個蝗锥。
我遇到的問題到這里就結束了,分析下問題原因:
ssh 鏈接默認用的 id_rsa汇竭,這個可以使用 ssh -vT git@xxx.com
來看穴张,輸出的內容有讀取的 ssh-key 的目錄和列表,
配置多個 ssh-key 需要指定哪個 host 使用具體的哪個 ssh-key
最大大問題就在于 gitlab 的 ssh-keys 頁面上面有個 generate it 的鏈接玻驻,教你如何配置偿枕,只看到了上面的添加 key,沒看到下面的添加非默認key的解決辦法=タ洹!捺萌!