新的gitlab实例拒绝允许推送

时间:2013-11-04 18:24:00

标签: git gitlab

安装了gitlab,Web界面和日志记录表明事情正在运行。但是,当我尝试将新的repo推送到它时,它失败了(对于http):

[gerry@boundary ct12Logger]$ git push -u origin master --verbose
Pushing to http://aaaa.bbbb.cccc.gov:8080/gerry/ct12-logging.git
error: The requested URL returned error: 401 Unauthorized while accessing http://aaaa.bbbb.cccc.gov:8080/gerry/ct12-logging.git/info/refs

fatal: HTTP request failed

同样,ssh尝试......

[gerry@boundary ct12Logger]$ git remote rm origin
[gerry@boundary ct12Logger]$ git remote add origin git@aaaa.bbbb.cccc.gov:gerry/ct12-logging.git
[gerry@boundary ct12Logger]$ git push -u origin master --verbose
Pushing to git@aaaa.bbbb.cccc.gov:gerry/ct12-logging.git
Access denied.
fatal: The remote end hung up unexpectedly

这一切都安装在RHEL 6.4系统上。状态请求声明sidekiq和gitlab正在正常运行。我已经死路一条,并且会欣赏我可以尝试的一些想法。

另一个数据点:虽然我已经根据需要设置了用户名,但是当我执行以下操作时,

ssh -T  git@aaaa.bbbb.cccc.gov

我得到以下内容:

Welcome to GitLab, Anonymous!

这告诉我,git没有正确找到用户名...

4 个答案:

答案 0 :(得分:2)

注意:您可能希望屏蔽您发布的错误消息中显示的真实域名。

现在试试这些:

由于ssh -T git@aaaa.bbbb.cccc.gov将您识别为Anonymous,请尝试

ssh -i /path/to/private/key -T  git@aaaa.bbbb.cccc.gov

如果此方法有效,请将以下行添加到本地计算机上的$HOME/.ssh/config

Host *
   StrictHostKeyChecking no

Host aaaa.bbbb.cccc.gov
   User git
   IdentityFile /path/to/private/key
   Port 22

现在再试一次

 ssh -T git@aaaa.bbbb.cccc.gov

您可以在v命令中添加ssh开关,以获得详细输出,如下所示

 ssh -Tvv git@aaaa.bbbb.cccc.gov

(您可以使用更多v来获得更详细的输出。这对于解决ssh相关问题

的问题非常有用

希望这应该有效。如果失败,那么您在gitlab注册的公钥很可能与您使用的私钥不匹配。

更新

刚刚看到这个链接。您可能会发现这很有用:Installing GitLab on RedHat Enterprise 5

答案 1 :(得分:0)

检查自己的工作很有帮助。我正在使用Apache2,在RHEL中称为httpd。我在/etc/httpd/conf/httpd.conf中进行了所有必要的调整,但我在/etc/httpd/conf.d/gitlab.conf中遗漏了一些。我在该文件中使用了错误的代理端口,因为它是在httpd.conf之后读取的,所以它正在改变代理端口设置。

它正在运作。测试。要得到另外几位同事的测试,那就好了。

感谢所有人,指点。

答案 2 :(得分:0)

问题似乎是一个带git的版本。

我删除了1.7.10版本并安装了1.7.12。

它在工作。测试。

https://forum.gitlab.com/t/solved-401-unauthorized-with-http-push/190

答案 3 :(得分:-1)

通过在Centos上安装新的git版本来实现它的一篇非常好的文章。

http://www.storelocatorplus.com/update-git-on-centos-6-3/

它解决了我这方面的问题。