"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.

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.

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.

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.

> - The repository is on NFS.

In related news, user B's CVS administrator is also an idiot.
_______________________________________________
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs

Reply via email to