使用lighttpd设置git服务器/ web:给...找不到git-upload-pack

时间:2013-07-21 16:04:57

标签: lighttpd gitweb

我已经设置了lighttpd和gitweb。创建了一个空存储库,如下所示:

$server> git --version
git version 1.7.11.7
$server> git --bare init p1
$server> cd p1
$server> git update-server-info
$server> cd ..
$server> chown -R lighttpd:lighttpd p1

在浏览器中我可以浏览此存储库,但是当我尝试从命令行克隆它时,我得到:

$> git clone https://example.com/git/project.git p1
Cloning into 'p1'...
fatal: https://example.com/git/project.git/info/refs?service=git-upload-pack not found: did you run git update-server-info on the server?

而且,也许有帮助,这是我的lighttpd配置

alias.url += (
  "/static/gitweb.css"      => "/var/www/git/static/gitweb.css",
  "/static/git-logo.png"    => "/var/www/git/static/git-logo.png",
  "/static/git-favicon.png" => "/var/www/git/static/git-favicon.png",
  "/static/gitweb.js"       => "/var/www/git/static/gitweb.js",
  "/git"                    => "/var/www/git/gitweb.cgi"
)

我确实运行了'git update-server-info',但没有成功! 有什么建议 ?

1 个答案:

答案 0 :(得分:0)

有时它是git可执行路径问题。可以在this question找到解决方案。

此外,如果您有权访问lighttpd服务器日志,请检查error.log并验证该URL是否正确。如果服务器conf使用重定向,则还必须使用正确的别名来访问git repos。这是对this question的回答的建议。本主题也在this question处理。

github info webpage指出服务器(由http服务器使用)与客户端之间的git版本差异可能会导致此类问题。 This webpage描述了如何在ubuntu服务器上将git升级到最新的稳定版本(如果您使用的是LTS,则非常有用)。

Sitaram添加了一些关于如何正确设置here的文档。

我在apache设置方面遇到了类似的问题,但尚未找到解决方案。