[cvsnt] How to *move* a trunk section to a branch?

Max Bowsher maxb at ukf.net
Fri Sep 5 09:21:34 BST 2003


Bo Berglund wrote:
> Hi all,
> I have a small problem that I don't know how to handle in the best way...
> There is a module containing a component that we use all the time in many
> different products.
> It reached a "stable" level and all was fine.
> Then entered one developer with special needs and he modified the
component,
> making it multithreaded and with all kinds of bells and whistles. In the
> process he managed to introduce stuff that made it misbehave *sometimes*
in
> our regular use.
> Of course he did all of this on TRUNK to make it even worse, that is how
it
> eventually was discovered.
>
> Now, what I want to do is create a branch where he started his
"improvements"
> and move all of the following edits out on this branch so that the HEAD
will
> again point to the stable version we had before his changes.
> I know I can promote the stable version to become HEAD again but at a
> different revision level, but this is not what I want, because the changes
he
> made was for a reason and should be kept for him.
>
> But I want everyone that checks out the component to get tghe stable
version
> unless they specify the threaded version.
>
> So is there a way to move file revisions on TRUNK out to a branch by some
> administrative commands or such?

No. It's probably possible with some advanced scripting, but not easily.

The next best thing would be to revert the changes from HEAD, commit,
branch, reapply changes to the branch.

Sure, the history will be a little messier, but it won't break existing
working copies, and you can accomplish it just using cvs commands, diff and
patch.

Max.



More information about the cvsnt mailing list