推送到服务器时的Gitolite错误

时间:2013-05-29 17:50:37

标签: linux git gitolite

我有一台带Git和Gitolite的Linux服务器。到现在为止,总是工作正常,但从昨天起我就遇到了问题。我可以连接并拉动我的回购,但是当我推送时我有这些类型的错误:

remote: Empty compile time value given to use lib at hooks/update line 6
remote: Use of uninitialized value in require at hooks/update line 7.
remote: Can't locate Gitolite/Hooks/Update.pm in @INC (@INC contains:  /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at hooks/update line 7.
remote: BEGIN failed--compilation aborted at hooks/update line 7.
remote: error: hook declined to update refs/heads/master
To git@myhost.com:/home/git/repositories/gitolite-admin.git
! [remote rejected] master -> master (hook declined)
error: failed to push some refs to 'git@myhost.com:/home/git/repositories/gitolite-admin.git'

我迷路了...你能帮帮我吗?感谢

2 个答案:

答案 0 :(得分:0)

Empty compile time value”是典型的绕过gitolite的网址。

您使用过:

git@myhost.com:/home/git/repositories/gitolite-admin.git

但你应该使用:

git@myhost.com:gitolite-admin

有关详情,请参阅“git, gitolite error push”。

答案 1 :(得分:0)

问题可能是使用" http uri"克隆存储库。回购如果是这样,以下解决方案可以解决问题。

编辑项目根目录中存在的.git/config。 寻找远程起源部分。

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = http://myhost.com/home/git/repositories/gitolite-admin.git

然后使用ssh url git@myhost.com:/home/git/repositories/gitolite-admin.git

替换配置文件中的url字段

然后尝试推。