tags:

views:

30

answers:

2

I have a repository that looks like this:

/a/trunk/Library
/a/branches/FeatureX/Library
/b/trunk/Application
/b/branches/FeatureX/Application

I want to rearrange this so that I have the Application and Library folders next to each other:

/a/trunk/Library
/a/trunk/Application
/a/branches/FeatureX/Library
/a/branches/FeatureX/Application

I tried to achieve this by simply "svn copy"-ing the "Application" folders. The problem I'm facing is that when I try to merge "FeatureX" into "trunk" later on, I get a tree conflict because "Application" was added in both trunk and the branch.

Is there a better way to do this?

(BTW i cannot merge "FeatureX" before copying "Application", this is just a test to see if it will be possible later on...)

A: 

OPTION 1: Merge the changes from trunk (aka /b/trunk/Application) to your /a/branches/FeatureX. That should you give you an 'original' Application folder in the FeatureX branch. Then do a delta merge taking /b/trunk/Application and /b/branches/FeatureX/Application and merging those changes to a working copy of /a/branches/FeatureX/Application. That should allow you to then cleanly merge /a/branches/FeatureX to /a/trunk.

OPTION 2: Don't svn copy /b/trunk/Application to /a/trunk. Rather svn copy /b/branches/FeatureX/Application to /a/branches/FeatureX. Then merge those changes to /a/trunk when you are ready. If there are changes in /b/trunk/Application that are not in /b/branches/FeatureX/Application, you'll want to re-base that branch before doing the svn copy over to /a/branches/FeatureX.

jgifford25
In option 1, shouldn't it be "aka /b/trunk/Application"?
hmn
If I understand your solutions correctly, in both options the final layout is only achieved after merging "FeatureX" into "trunk" as the last step. But in my scenario, "FeatureX" will not be merged for weeks or months, while I would like to implement the new repository layout right now.
hmn