I wrote:
> It depends on how fine-grained you want things. If all the users have
> ssh accounts on the system, you can just make the repository shared
> and add everyone who should have commit privileges to the group used
> for the repository. This is how it is done on
fedorahosted.org. For
> example, if your git repo is at /git/repo.git:
>
> # Tell git the repository is shared
> $ git --git-dir /git/repo.git config core.sharedrepository true
>
> # Set proper group ownership
> $ chgrp -R gitgroup /git/repo.git
>
> # Make all directories setgid
> $ find /git/repo.git -type d -exec chmod g+s {} \;
>
> # Ensure files and dirs are group writable
> $ find /git/repo.git/ \( -type f -o -type d \) -a \
> \( -perm /u+w -a ! -perm /g+w \) \
> xargs chmod g+w
Incidentally, most of this is only needed if you're dealing with a