Subject: Re: Git at Better SCM Initiative comparison of VCS (long)

From: Jakub Narebski <[email-masked]>
Date: Sun, 14 Sep 2008 23:29:01 +0200

On Sun, 14 Sep 2008, Shawn O. Pearce wrote:
> Dmitry Potapov <[email-masked]> wrote:
>> 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.

Could you then update contrib/hooks/update-paranoid documentation?
It talks only about branch level restrictions (created, delete, 
fast-forward, forced update for a given ref class).

Thanks in advance
-- 
Jakub Narebski
Poland