> "Reinstein, Shlomo" <[EMAIL PROTECTED]> wrote in > message news:<[EMAIL PROTECTED]>... > > - User B commits his changes to p, without first updating > his working copy. > > Against all expectations, user B succeeds to commit even > though his working > > copy is not up to date, leading to an unstable latest > version of the project > > in the repository. > > User B is an idiot for not performing a commit over the entire tree > which is affected by his change, and for having unrealistic > expectations on what a single-file commit ought to do.
Why rush into conclusions? User B did perform a commit over the entire tree, which is why I am reporting this on the mailing list. > > Just go to the highest relevant directory and type ``cvs ci'' with no > arguments, or at most a -m to specify the message. > > In Meta-CVS, if you do a ``mcvs ci'' with no arguments anywhere in the > tree, it will commit on the entire project, directory structure, files > and all. The tag and update commands work similarly. We don't use meta-CVS, but we have a Perl wrapper around CVS. One of the things this wrapper does is disable commits from anywhere inside a project. Users are only allowed to commit from the top level directory of a project. > > The only way to say ``commit (or update or tag) this directory only'' > is to specify the single parameter . > > The other commands like log and diff work just on the current > directory and its subdirectories when no arguments are given. Same with our Perl wrapper. > > This design is deliberate; it promotes consistency. If you make it > awkward for people to achieve consistency---by for instance forcing > them to ``cd'' to some higher directory to do a commit---they will > fail to do so, at least some fraction of the time. They don't have a choice... They cannot fail to do so. > > > - The repository is on NFS. > > In related news, user B's CVS administrator is also an idiot. And why is that? > _______________________________________________ > Info-cvs mailing list > [EMAIL PROTECTED] > http://mail.gnu.org/mailman/listinfo/info-cvs > _______________________________________________ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
