[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Merge One Direction or Both?

From: Gavin Lambert <gavinl_at_compacsort.com>
Date: 2005-11-07 22:51:31 CET

Quoth trlists@clayst.com <mailto:trlists@clayst.com>:
> However ... imagine this scenario:
>
> At r27 the two branches are synchronized (last merge)
> 'Live' branch has some changes committed in r28 - r30
> 'Dev' branch has also been updated (WC only)
> Merge live changes from r28:30 to dev -- this gets bug fixes
> into the dev branch -- and resolve any conflicts
> Commit dev as r31
>
> Here I think it's simple -- if dev has not been committed since r27 I
> can just merge dev changes from r27:31 back to live. Right?

Well, it's better to first commit your changes from the dev WC to the
dev branch (making r31 in dev). *After* that you merge r28:31 from live
into dev and resolve conflicts, then commit again, making r32. Then if
you're happy terminating the branch, you can switch to live, merge
r28:32 from dev to live, and commit r33.

That way it's more obvious what changes the merge is making, and you can
back it out if something went fubar.

> But what about this:
>
> At r27 the two branches are synchronized (last merge)
> 'Live' branch has some changes committed in r28 and r30
> 'Dev' branch has some changes committed in r29 and r31
> 'Dev' branch has also been updated (WC only)
> Merge live changes from r28:30 to dev, should work as above
> Commit dev as r32
>
> Now, how do I get the dev changes back into the live branch? What
> revisions do I merge? The interlacing makes it very confusing.

1. Commit dev (r32)
2. Merge r28:32 from live into your dev WC (HEAD is 32)
3. Resolve any conflicts, make sure everything still works ok
4. Commit dev (r33)
5. Switch to your live branch
6. Merge r28:33 from dev into your live WC (HEAD is 33)
7. Make sure things are still ok
8. Commit live (r34)

(In step 2, since r29 and r31 only contained changes to the dev branch,
there won't be any modifications in the live branch for those revisions.
So merging them is a no-op and quite safe.)

I'm fairly sure that this is the correct procedure, anyway :)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Nov 7 22:54:12 2005

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.