Gitlab添加SSH key可以pull不能push的原因与解决方法

背景:使用webhook 钩子进行代码的自动更新

 

问题: 在进行git pull 时候。报错了如下图:Gitlab

这是gitlab 最坑比的地方!

 

问题原因:

gitlab有两个key这事可能你在反反复复的过程中应该已经知道了,一个是SSH一个是Deploy。SSH拥有push和pull的权限,而Deploy只能pull不能push。

没错,你生成的确实是SSH,讲道理你也应该可以push,但是千算万算你没算到gitlab有个坑。它可能觉得你懂它,所以它没告诉你:

 

在Gitlab里有两个添加SSH的地方:

  • 一个在项目设置的密钥里
  • 一个在Gitlab主页个人资料设置的SSH密钥里

 

个人主页密钥:Gitlab个人主页SSH密钥

 

项目里的密钥:

Gitlab项目的密钥

 

两个就是如此的相似!

 

解决方法

没错,正如你所想,你应该把SSH keys填在 Gitlab主页下的个人资料设置 -- SSH密钥里,在这里添加的才是SSH。在项目里添加的是Deploy ;

 

正确添加之后,就可以完美的 push 和 pull 了。

    A+
发布日期:2019年11月30日 21:36:28  所属分类:GitLab
最后更新时间:2019-11-30 21:36:28
头像
  • ¥ 39.0元
  • 市场价:39.0元
  • ¥ 6.8元
  • 市场价:8.8元
  • ¥ 68.0元
  • 市场价:98.0元
  • ¥ 299.0元
  • 市场价:599.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: