Greg Woods wrote:
> [ On Monday, June 19, 2000 at 17:12:42 (+0100), Mike Little wrote: ]
> > Subject: RE: ".trunk" patch refinement
> >
> > Would '-r1' work if some previous cvs admin had updated vast numbers of
> the
> > trunk revisions to 3.x (presumably when version 3.0 of the product was
> > released)?
>
> I don't know for sure -- I never tried it.
>
> However people should *not* ever be doing such silly things -- there are
> more corner cases than just this one whre they can get into trouble!
>
> (Yes, the manual gives instructions on how to do this -- it should not.)
[smc] Other than perhaps to say, "don't do that."
However, just because you shouldn't doesn't mean
nobody will, if only out of ignorance, or by a typing
accident, and pretty much anyone with commit
access may do this, and once it's done, then what?
Manually edit the RCS files to fix it? Abandon the
repository in frustration and refuse to work with such
idiots? This latter is more or less what you propose
CVS should (continue to) do ;-) at least in the area of
having a way to refer to the trunk other than a fresh
checkout.
There are at least a couple ways this can happen, one
is "cvs commit -r" and another is copying in RCS files from
someplace else. (The latter is the world I come from, so
I've got lots of RCS files with weird revision numbers.)
Sure, you may certainly say, "sorry, too bad, go away",
but that's not what _I'm_ going to say. I will however concede
that this ".trunk" feature is for me only a "nice-to-have" and
not a "need-to-have", I've lived without it for 3 years now,
and others have dealt with its absence for considerably
longer than that.
And as it happens our current development process
involves committing to the trunk only rarely, when a branch
is merged to the trunk. It's just something that's always
bugged me that HEAD was so weirdly implemented
and this "-r1" isn't obvious to anyone and only works by
a quirk of RCS and then only under a limited set of
circumstances, and when it doesn't work, it doesn't
TELL you that it's not working so you easily might
fail to notice that you'd generated the wrong diffs or
whatever. (or the other probably more correct
interpretation, -r1 works perfectly, if that's not
what you wanted, well, sorry..)
I would be interested in knowing about any other
"corner cases" I might run into with my mal-formed
repository that you might be aware of.
-- steve