[prog] CVS travails, and strategies
Jenn Vesperman
jenn at anthill.echidna.id.au
Thu Sep 18 23:11:18 EST 2003
On Thu, 2003-09-18 at 10:48, John Clarke wrote:
> That's not the way I read it. This is what Michelle said:
>
> > anyway. So I made a new head sandbox, and used the command cvs update -j
> > branchname -D some_time_ago, which merged my branch features with my
>
> So she started with HEAD, then merged the branch from some_time_ago
> (i.e. the -D switch selected where on the branch to merge from) into
> her working copy. Any changes made in the head since that date that
> weren't also made in the branch would most likely be lost.
>
> I haven't ever used '-D' with '-j' when merging a branch, but I have
> merged branches which didn't include changes made in the head and seen
> similar results to those that Michelle described - changes lost from
> the head.
So have I, but only with two -js.
I have seen nothing to indicate that -D with -j would have the effect
you describe, particularly since there's the -j revision[:date] syntax
for this situation (use -j branchrevision:some_time_ago).
So _my_ assumption is that cvs would treat the -D as a request to
convert the sandbox to a static sandbox with the files all as of the
date; and NOT to perceive the -D as a part of the merge parameters. -j
is for merge parameters.
> I don't think *anyone* knows exactly what CVS will do with every
> possible combination of parameters :-) Most of my knowledge comes from
> it not doing what I expected and having to figure out how to get the
> result I really wanted.
Messy.
> > If you _know_ that what you described above is what would happen..
>
> I'm as sure as I ever can be when talking about cvs and merging and
> branches :-)
>
> > great. :) But can you explain what happend to Michelle's files?
>
> Does what I said above make sense?
Abstractly? Yes, but it doesn't explain how she lost head data, and my
assumptions do.
Also, I have seen nothing in the documentation for CVS that implies that
cvs update -j foo -D quux would treat the -D quux as a merge parameter,
rather than a request to convert the sandbox to a static one. I'm
familiar only with -j foo, or -j foo -j quux, as merge parameters.
Jenn V.
--
"Do you ever wonder if there's a whole section of geek culture
you miss out on by being a geek?" - Dancer.
My book 'Essential CVS': published by O'Reilly in June 2003.
jenn at anthill.echidna.id.au http://anthill.echidna.id.au/~jenn/
More information about the Programming
mailing list