Take the 2-minute tour ×

Something crazy is happening to me.

If you visit http://git.jshawl.com/, you'll see a single repo "testing.git", though if you click on "TXT" in the lower right corner, you can see another repo that is there "wordpress-theme"

Also, I know there repo is there because I can clone it git clone git@git.jshawl.com/boilerplates/wordpress-theme

what gives?

Here's a little more background info on my setup:

git.jshawl.com is hosted on Mac OS X, in the directory "/Users/git/repositories" (this was setup when I installed gitolite), I've got a VHOST that points to this directory. I also dropped my gitweb.cgi file into that directory.

My permissions on both the boilerplates directory and the wordpress-theme directory are 755 (rwxr-xr-x)

share|improve this question
Any comment/feedback regarding my previous answer? (serverfault.com/a/419109/783) –  VonC Aug 20 '12 at 6:35
Does the http setup described below works a bit better than the gitweb? –  VonC Aug 20 '12 at 21:04
add comment

1 Answer

Note: gitweb isn't for cloning.
It is for browsing.

Should you want to clone, you would have to define a custom root in your apache server config in order to call the gitolite-shell, with the GIT_HTTP_BACKEND defined and pointing to the git/libexec/git-core/git-http-backend cgi script (shipped with git) which allows for clone/push/pull over the web.

Here is an extract of what that would look like (see the full version here)

# GitHttp on @PORT_HTTP_HGIT@
<VirtualHost @FQN@:@PORT_HTTP_HGIT@>
ServerName @FQN@
ServerAlias @HOSTNAME@
SetEnv GIT_PROJECT_ROOT @H@/repositories
ScriptAlias /hgit/ @H@/gitolite/bin/gitolite-shell/
SetEnv GIT_HTTP_BACKEND "@H@/usr/local/apps/git/libexec/git-core/git-http-backend"
SSLOptions +StdEnvVars
<Location /hgit>

In your case, it looks like the gitolite filter I decribed in my previous answer isn't completely in place. Just calling gitweb.cgi isn't enough.

It will display only the projects listed in your project.list file, but without any gitolite filter, the TXT link displays all the .git bare repo in your repositories directory.

share|improve this answer
add comment

Your Answer


