How can I host a Mercurial repository for several users myself?

Robert Kosara picture Robert Kosara · May 19, 2009 · Viewed 7.5k times · Source

There are a number of hosting services for git, Mercurial, etc. I need to host my own, because some of the data we want to keep there is of a sensitive nature, and we cannot move it off-site.

I need to host a Mercurial repository on a server so that a number of people can access it to both pull changes and push their own work. There needs to be some kind of password protection, and it could also use ssh. I would prefer HTTP(S) as the transfer protocol (a la Google Code) though, if possible.

Can somebody point me to a description of how to do this? I have only found descriptions for hosting single-user repositories and hosting services so far, but nothing about doing the multi-user hosting myself.

Answer

John G picture John G · May 19, 2009

Have a look at the PublishingRepositories page on the mercurial site. It will tell you how to set up the hgwebdir.cgi script for serving multiple repos over https.

Once you've configured it, I would recommend adding this to your hgrc:

[web]
style = gitweb

I find it's a bit nicer theme than the default.