Gitosis alternative?
Are there alternatives to gitosis that are easier to use?
I currently run gitosis on a Ubuntu server for my lab. We regularly add new users and repos. I find the gitosis.conf
syntax non-intuitive, and if I make even a minor mistake the whole gitosis system fails, see for example this question on SO. When gitosis fails it also kills access to the git repository that contains gitosis.conf
... go figure... There must be a better way.
I've thought about private GitHub accounts, but is there anything else that I could host locally?
Solution 1:
Gitolite might be a solution.
Solution 2:
I ended up just paying for GitHub. Here is what I tried:
Gitolite: The install is actually tricky. I ran into lots of SSH key trouble which was compounded by the fact that I first tried installing from a windows workstation. Also, Gitolite requires a server running Git 1.6, but Ubuntu stable on my server only runs Git 1.5. I could have compiled newer git from source, but by that point I had already sank 3 hours into my gitolite install.
-
Gitorious: Gitorious requires ruby, mysql, and a gazillion gems and packages. As @calmh said,
Gitorious is wonderful when up and running. It's a nightmare to get there...
At that point I decided to go with GitHub:
- GitHub: $50/month gets 50 private repositories, 25 collaborators and 6 GB of space. Individual users can easily add additional SSH keys themselves and its trivial for my colleague and me to create new repos for our coworkers. I usually like the free DIY solution, but in this case the money really is well worth it.
Final thought: It would be great if TurnkeyLinux could one day improve their revision control appliance to include gitorious by default.
Solution 3:
I was using github, but it becomes too expensive while number of your projects grows. And the way it manages public keys is not very satisfying. For example you can't add two identical keys for two different repos, you are forced to add is as global key (correct me if i am wrong).
I found that having a slicehost slice (or whatever you use) with gitolite is much cheaper. Gitolite installation and management is very easy and straightforward. And if you need a web interface there are options to choose from, but i personally don't need it, and never used this feature on github. Access control os very powerfull and easy in same time. And there are ways to install it not having a root access to your host.
And you can use your server for hosting too, not paying another monthly fee. I wrote an tutorial on how to setup gitolite on ubuntu which is super easy (in contrast to girroco).
You can read it here