Greg answered most of your questions. Let me just fill in one missing piece:
On Mon, Mar 11, 2002 at 09:22:44PM -0500, Matthew Persico wrote: > I always though that in the presence of a branch, a command w/o a -r option > worked on latest revision, main line code. *Except* for the vendor branch. The rule is: if a file was imported to the vendor branch, and nobody has yet checked in any local changes on the trunk (i.e. if the version of the file on the vendor branch is still current), then (and only then) the default revision is the latest one on the vendor branch. More specifically, the default revision is always the latest one on the "default branch". The default branch is usually the trunk. But when you first "cvs import" a new file foo, CVS sets its default branch to the vendor branch (1.1.1, unless you specified otherwise). The first time someone "cvs commit"s a new revision of foo *to the trunk*, CVS switches the default branch to the trunk; and there it stays forevermore, unless you do the "revert" thing talked about in the manual. If you later "cvs import" a new revision to the vendor branch, the default branch is NOT changed; it stays wherever it was before. The net effect of all this is: - If a file was first made known to CVS via "cvs import", and no local changes have been committed to it (i.e. the highest trunk revision is 1.1), then the "default branch" is the vendor branch - In *all* other circumstances, the default branch is the trunk (Actually, there's one other way for the default branch to change: someone can change it manually. But, except for reverting to the vendor branch as described in the manual, you should *never* do this.) "cvs log" tells you which branch is the default for a given file; look for the "branch:" line. If no value is shown, the trunk is the default branch. > I guess I need to re-read how branches work. I was going to tell you to read the "third-party sources" section, but that doesn't seem to explain this in any detail. Neither does the reference node on "cvs import". There are hints, but they'd probably only be comprehensible to someone who already understood the situation. E.g. there are a number of references to the default branch, but I can't find any explanation of what that is or how CVS uses it. *sigh* So now that I've explained it a bit, try rereading the two sections I mentioned: http://www.cvshome.org/docs/manual/cvs_13.html#SEC104 http://www.cvshome.org/docs/manual/cvs_16.html#SEC136 With luck, those hints that didn't make any sense before will jump out at you this time through :-) -- | | /\ |-_|/ > Eric Siegerman, Toronto, Ont. [EMAIL PROTECTED] | | / "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next. - Anonymous _______________________________________________ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs