Re: adding on branch
"Stefan Monnier" <monnier+gnu.cvs.bug/news/@flint.cs.yale.edu>
| Newsgroups | gmane.comp.version-control.cvs.bugs |
|---|---|
| Organization | Yale University |
| Message-ID | <[email protected]> |
>> 1 - create a branch B
>> 2 - import a new vendor version with a new file F (gets rev 1.1.1.1)
>> 3 - add a new file F on branch B
>>
>> now the HEAD of the trunk for file F is 1.1.1.1 (it's magical).
>> But if switch steps 2 and 3, you instead end up with a dead head
>> for file F on the trunk.
>>
>> Why should the order of 2 and 3 make any difference to the user ?
>
> Why should they be the same?
Because activity on a branch should not interfere with activity on
the trunk, maybe ?
> Apparently the local site has local changes cooking that might well need
> to be merged into the top-level or branched off of the top-level if the
> order is reversed.
Huh? There's no apparently-anything in the example above. There's just
someone using a branch and someone else using the vendor-branch (and the
trunk). You can't outguess them. The guy doing the import might not even
know that someone else is playing around on branch B.
> It sounds like you are proposing that the vendor branch be chosen based
> on bringing in a new dead version on top of an existing dead version
Not at all. I just want the above example to give me the same behavior
independently from the timing of 2 and 3. That probably means that
if the import see a dead-revision 1.1 it should still set the default
branch to 1.1.1, as it does when the RCS didn't exist at all beforehand.
> For example,
> 1.1 is dead
> 1.1.2.17 is the active version on the branch
> <import>
> 1.2 is dead, but copy of 1.2.1.1
> 1.2.1 is the vendor branch
> 1.2.1.1 is the first version on the vendor branch
I don't see why you'd want/need a dead 1.2, but you might be right about it,
I wouldn't know. OTOH you don't mention the state of the default branch
(i.e. the "cvs admin -b" thingy used by the magic branch support) which I'd
want to be "1.2.0.1" in the above scenario.
Also since the default branch now points to a live branch, the trunk is not
dead anymore and the file should be moved out of the Attic.
> If so, doesn't this violate the principle of least astonishment that
> the local site may have desirable code in the 1.1.0.2 branch they
> created that should be merged into the trunk if that code goes live?
I think that's due to your revision 1.2 above. I'm not sure why you needed
to do that.
Stefan