when gitolite is overkill

Note: I wrote this to help people for whom gitolite is genuinely overkill. I believe it will all work, but YMMV.


You don't always need something like gitolite. If you have a fixed (or very rarely changing) number of users, and all of them have full access to all your repos, you can use plain Unix permissions to get a lot of this done:

And that's basically it. The "init --shared" will create the repos with "chmod -R g+s". If you have existing repos where you forgot (or didn't know) the "--shared" argument, do this on each of them:

    cd reponame.git
    git init --shared --bare
    chmod -R g+w .
    chmod g+s `find . -type d`

I think that should do it.


You can do more complex things using Unix acls. If you do, and feel like writing it up, send it to me and I will add it here (with credit given of course). Personally, I can't be bothered -- once you have differing needs for different people, you really need gitolite anyway, because you probably need different rights for branches as well and Unix ACLs can't do that.