I am trying to setup gitlist on CentOS Linux (with gitolite in case that matters — I have relaxed the permissions on the repo directories managed by gitolite).
I extracted the version 0.3 tarball from today from gitlist.org.
My config.ini looks like this:
client = '/usr/bin/git' ; Your git executable path
repositories = '/home/gitolite/repositories/' ; Path to your repositories
[app]
debug = true
; I don't know if baseurl is still needed..seems like my results are the same either way
baseurl = 'http://sub.example.com.com/gitlist' ; Base URL of the application
virtual host directive in httpd.conf:
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName sub.example.com
<Directory "/var/www/html">
AllowOverride All
Options -Indexes
</Directory>
</VirtualHost>
htaccess:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /var/www/html/gitlist/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,NC]
AuthName "Git List"
AuthType Basic
AuthUserFile /var/www/.gitlistpwds
Require valid-user
</IfModule>
<Files config.ini>
order allow,deny
deny from all
</Files>
With this setup, going to http://sub.example.com/gitlist results in the browser error message saying that /index.php does not exist (i.e. it's trying to go to /var/www/html/index.php )
In this case if I go to http://sub.example.com/gitlist/index.php, the repository list (apparently) properly appears. When I click on one of the repos, something goes wrong when it tries to execute, git. I get:
Whoops, looks like something went wrong.
1/1 RuntimeException: Unknown option: -c
(std git usage message omitted)
If I remove the rewrite rule from .htaccess, I am able to access the index page by either specifying index.php or not. But in that case when I click on a repo, it tries to find the repo underneath the gitlist directory:
The requested URL /gitlist/testing.git/ was not found on this server.
Can someone please help sort out this mess?
Best Answer
I finally managed to test gitlist.
I removed the
.htaccess
, and kept the following config in httpd.conf:(From my own commit, and this setup)
Note that:
https://myServer/gitlist
(not justhttps://myserver
)