On Feb 10, 2006, at 17:19, Matt England wrote:
> Anybody know the answer to this? My tests suggest that a merge is
> not this smart, but I want to confirm with the community, if
> possible, that I'm not missing something.
> At 2/9/2006 07:36 PM, Matt England wrote:
>> One of my subversion-based software projects has made a branch.
>> The trunk directory structure was (probably unfortunately)
>> reorganized such that the files in the directories were not
>> changed, but the director structure (names of dirs, moving of
>> dirs, etc) were.
>> I presume this will break the automated merging capability...or
>> will it? I'm presuming that the merge works, fundamentally, as a
>> recursive diff between 2 directories (and the docs appear to back
>> that up).
I believe that yes, if you rearrange the trunk, then it will not be
possible to merge in changes from a branch.
>> The next question: if we organize the branch to match the trunk's
>> directory structure, will be able to merge again, as we would have
>> originally if neither the branch nor the trunk directory structure
>> had every changed?
There's still the problem that Subversion doesn't yet offer true
renames; rather, it treats a rename as an "add" followed by a
"delete." So if you were to try to rearrange the branch to match the
trunk by merging some revisions of the trunk into the branch, that
wouldn't work so well either, as any changes you had made to files in
the branch would remain as unversioned files at their old locations,
while new files from trunk would appear at their new locations and
you'd have to bring over the changes by hand.
>> I plan on testing this behavior in an offline-test repo; I also
>> thought it worth asking about here.
I would strongly encourage you to try the relevant scenarios out
yourself in a test repository to convince yourself of the problems
that you'll encounter. Maybe they won't be insurmountable problems
for you, but if they are, you'll be glad you tried it out before in a
harmless test repo before messing up your real data.
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Fri Feb 10 18:26:03 2006