无法从gitlab clone项目

无法从gitlab clone项目

https://img1.sycdn.imooc.com//climg/61def62a098b3fa710680318.jpg

在gitlab设置了公钥后依然要求输入密码,是什么原因呢

https://img1.sycdn.imooc.com//climg/61def6d7091f805d05260128.jpg

我的理解是我的gitlab账号中设置了公钥,我应该就不需要输入密码了啊


我查了下,我在github是用的这个公钥,那么如果我使用gitlab的话,是需要再配置一个ssh key吗?ssh key 不可用于多个git托管平台吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

github与gitlab可以共用一个公钥,这个没关系


(但是这样安全性上会差一点)


需要密码说明没有读取到正确的公钥,你要确定你给gitlab配置的公钥是在~/.ssh/id_rsa.pub(这个是默认使用的)


对应的私钥的路径应该是~/.ssh/id_rsa


如果有自己的特定路径,参考下面的~/.ssh/config配置文件:


Host *

 ServerAliveInterval 30


Host toimc

 HostName github.com

 PreferredAuthentications publickey

 IdentityFile ~/.ssh/toimc


Host git.toimc.com

 HostName git.toimc.com

 PreferredAuthentications publickey

 IdentityFile ~/.ssh/toimc


那么用法是这样的,比如我现在是:

  1. github.com,那么我在clone的时候,需要这样写 git clone git@toimc:xxxxx

  2. 如果是git.toimc.com,那么我在clone的时候,可以直接 git clone git@git.toimc.com:xxxxxx


为什么?

因为git会读取Host -> 等价于HostName



问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师