我试图建立使用gitolite Git服务器。 到目前为止,我有服务器与SSH的工作,我并不想在它的上面添加http支持(最终目标是使用LDAP认证)
我已经按照http://sitaramc.github.com/gitolite/ssh-and-http.html方法文档。
我原本以为这一切建立,所以我尝试:
git clone http://myServer/testing
其结果是:
Cloning into 'testing'... fatal: http://myServer/testing/info/refs not found: did you run git update-server-info on the server?
我试着运行git update-server-info
与实际服务器的测试库,还是一样的结果。
有git-daemon-export-ok
的testing.git库。
可能有人请帮我解决这个问题? 我不知道我应该开始..
附加信息:
我使用的Arch Linux(服务器端)
从输出sudo suexec -V
:
-D AP_DOC_ROOT="/srv/http"
-D AP_GID_MIN=99
-D AP_HTTPD_USER="http"
-D AP_LOG_EXEC="/var/log/httpd/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=99
-D AP_USERDIR_SUFFIX="public_html"
下面是我在我的/etc/httpd/conf/httpd.conf中部分虚拟主机
在下面的部分,服务器名是我从获得hostname
命令
<VirtualHost *:80>
ServerName servername
ServerAlias servername
ServerAdmin admin@server.com
DocumentRoot /srv/http/git
<Directory /srv/http/git>
Options None
AllowOverride none
Order allow,deny
Allow from all
</Directory>
SuexecUserGroup git git
ScriptAlias /git/ /srv/http/bin/gitolite-suexec-wrapper.sh/
ScriptAlias /gitmob/ /srv/http/bin/gitolite-suexec-wrapper.sh/
<Location /git>
AuthType Basic
AuthName "Git Access"
Require valid-user
AuthUserFile /etc/httpd/conf/extra/git.passwd
</Location>
</VirtualHost>
从输出ls -l /srv/http/
drwxr-xr-x 2 git git 4096 Sep 6 22:02 bin
drwxr-xr-x 2 http http 4096 Sep 6 22:00 git
从输出ls -l /srv/http/bin/gitolite-suexec-wrapper.sh
-rwx------ 1 git git 196 Sep 6 22:02 /srv/http/bin/gitolite-suexec-wrapper.sh
在内容gitolite-suexec-wrapper.sh
:
#!/bin/bash
#
# Suexec wrapper for gitolite-shell
#
export GIT_PROJECT_ROOT="/home/git/repositories"
export GITOLITE_HTTP_HOME="/home/git"
exec ${GITOLITE_HTTP_HOME}/gitolite/src/gitolite-shell