I have what I thought was a simple scenario - using TortoiseSVN:
1) I made a branch (B2) of an application (to work on implementing image sprites & JAWR).
2) Testing & development went on as normal on the trunk.
3) I re-based the branch a couple of times over the last few days by:
3.1) Merged trunk (by range of revisions) to my branch-b2 working copy, resolving conflicts during the merge.
3.2) (after testing branch-b2), I commit the re-based branch-b2.
This all worked as I expected. But merging the branch back into the trunk is having its way with me:
4) After all updates committed in branch-b2; I make sure I do an SVN Update on trunk and branch-b2.
5) Then, I try to merge (range of revisions) from branch-b2 into the trunk. However, for any new file that had been added to the trunk, and subsequently added to branch-b2 when I rebased it, I get a tree-conflict. I'm not sure what the proper way is to resolve these conflicts.
The most typical advice I've seen is to either delete the tree-conflict files from the trunk, then merge the branch over; or delete the entire trunk, copy the branch files over, and then commit them as a new version in the trunk. Neither of those options seems like a good idea- first one is a pain, and both seem like they would lose file revision histories.
What'd I do wrong, and how do I fix it?