info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: access rights to branches


From: Laird Nelson
Subject: Re: access rights to branches
Date: Tue, 31 Oct 2000 10:40:19 -0500

Andrew Gilmartin wrote:
> What would be useful to us is a pre-commit check that made sure the user can
> revise a given file and given branch or mainline. For example,
> 
>         # user file                       development-line
>         *      #none                      #none
>         *      com/mesasys/productA/*     release_4_branch
>         asd    com/mesasys/productA/file1
> patch_1_branch,patch_2_branch,patch_3_branch
>         bnm    com/mesasys/productA/file1 #mainline,patch_*_branch
>         cvb    com/mesasys/productA/*     #all
> 
> This configuration would give 'asd' access to file1 only for patching, 'bnm'
> access to file1 for patching and mainline development, and 'cvb' all access
> to all files in all directories on all development lines for productA.
> Otherwise all developers can commit changes to release 4 of productA and no
> developers can commit other changes elsewhere.

Right, or see http://cvssupport.sourceforge.net/cvsacl.dtd for an XML
DTD that defines another syntax.  Maybe I'll look into adding the above
syntax as well.

> I don't think this can be done currently as the commitinfo handlers you do
> not have information about the line of development -- branch or mainline or
> revision numbers. If you did then implementing this kind of access would be
> straight forward and I think quite valuable. Perhaps we need a commitinfo2
> that provides this kind of information on the command line to the commit
> handler.

Again, if you can live with the assumption that the -r switch will never
be used in conjunction with the cvs commit command, then you *can*
implement this stuff (but it can always be overridden with the -r
switch).  The information is there, it's just in horrid locations and ad
hoc bits.  My cvssupport project (a) normalizes all the available
information into a set of perl classes and (b) provides a flexible ACL
plugin that allows you to do the above.  See
http://sourceforge.net/projects/cvssupport/ for details.  A full
announcement will follow when this project is ready for prime time; in
the meantime of course you can look at the sources via SourceForge's cvs
access mechanisms.

Cheers,
Laird

--
W: address@hidden / P: address@hidden
http://www.amherst.edu/~ljnelson/
Good, cheap, fast: pick two.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]