Redmine does not give read-only access to the git-repo

November 23rd, 2011 § 0 comments § permalink

The problem

I wrote how to install redmine on a debian server with mysql and everything went fine so far, until one day somebody wanted to clone a repo.

fatal: http://domain.tld/git/example.git/info/refs not found:
did you run git update-server-info on the server?

The analysis

So I thought it would solve the problem to run the command in the according git-repo. Nope, it didn’t. But accessing it via gitosis@domain.tld/git/example.git did actually work fine. That’s what puzzled me. Long story short: The apache tried to deliver a directory respectively a file that simply didn’t exist in the path. My redmine is located in /var/www/redmine and there is simply no directory git/ in there. But the gitosis@domain.tld/git/example.git was delivered by the gitosis daemon! So one could easily work while the other not.

The solution

So as soon I understood that I struggled with a totally different problem than git told me (the apache simply didn’t find the file), it was quite easy to fix it. Just add the following line to your redmine apache config, restart apache and everything should be fine.

Alias /git /srv/gitosis/repositories