Gitosis不能拉取代码,报错 ERROR:gitosis.serve.main:Repository read access denied fatal

公司使用的Git管理工具是Gitosis,在使用时,出现了不能拉取问题

在gitosis.conf中做好了配置,且上传了公钥的情况下,一直不能拉取代码,报错如下

ERROR:gitosis.serve.main:Repository read access denied
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

网上查来查去,就说是公钥没上传,或者名字写错了等等。实际上gitosis.conf中的名字,和公钥的名字没有问题且对应上了

后来摸索,找到了原因,以下是解决方案:

1、切换到git用户下,进入/usr/bin目录

2、执行如下命令

./gitosis-init < /var/opt/gitlab/repositories/gitosis-admin.git/gitosis-export/keydir/sm_new_hzb\@work.pub

至此,重试成功

原因如下:

1、切换到git用户下是因为拉取代码使用的是git用户。因此,要git用户对公钥及配置进行识别

2、执行gitosis-init命令,引入公钥信息,将配置及公钥对应起来

理解如下:

我们去窗口办事,以前是填完表把名字写进去(gitosis.conf),同时去了把身份证(公钥)交到前台就可以

这次的问题是,我明明填完了表(gitosis.conf),把身份证(公钥)交了,回去办事(拉代码)他一直说我这两个信息对应不上

解决方式是我交完身份证后,给窗口人员说了一下,这是我的身份证,你看一下(就是gitosis-init这个命令),系统读取公钥后,通过验证

至此,结束

附,文档可以看出很多问题,如果没有解决的话,建议大家看一下文档https://git-reference.readthedocs.io/zh_CN/latest/Git-on-the-Server/Gitosis/

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值