Re: Git at Better SCM Initiative comparison of VCS (long)
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Sep 14, 2008, 21:06 UTC
- Message-ID
- <20080914210648.GB26608@spearce.org>
- In-Reply-To
- <20080914194802.GH28210@dpotapov.dyndns.org>
Dmitry Potapov <dpotapov@gmail.com> wrote:
Show 16 quoted lines
> On Sun, Sep 14, 2008 at 07:48:05PM +0200, Jakub Narebski wrote: > > > > [...] if it is possible > > using current hooks infrastructure to restrict changes coming from > > some account in such a way as to allow it only if all changes are > > restricted to specified directory. > > I believe the update hook should be able to do that. You have oldrev and > newrev, so you can run "git diff --name-only oldrev newrev" and see what > files are going to change. And then verify that the user has the write > access to this directories or files. > > I have not tried it yet, and I don't think we have a ready example of > how to do that, but I believe that the example of the update hook that > restricts user access based on the target branch can be used as a > starting point.
contrib/hooks/update-paranoid can do both branch and file path level restrictions. I used it at my prior day-job to prevent some accidental changes from folks who didn't usually need to modify certain parts of the repository.
-- Shawn.