Jump to content
Sign in to follow this  
ShadowMage

Branch Integration Failed

Recommended Posts

I am trying to reintegrate a feature branch back into the trunk, but I keep getting the following errors: Error: Reintegrate can only be used if revisions 107 through 185 were previously Error: merged from file:///C:/VersionControl/Repositories/SkyPrice/trunk to the Error: reintegrate source, but this is not the case: Error: branches/MarkupToggle/Forms Error: Missing ranges: /trunk/Forms:139,174 Error: branches/MarkupToggle/Scripts Error: Missing ranges: /trunk/Scripts:139,174,180 Error: branches/MarkupToggle/SkyPriceHome.php Error: Missing ranges: /trunk/SkyPriceHome.php:139 Error: branches/MarkupToggle/SkyPriceLayoutStyle.css Error: Missing ranges: /trunk/SkyPriceLayoutStyle.css:139,174 What do these errors mean and how can I resolve them so that I can reintegrate my branch? I am using TortoiseSVN. Thanks for your help. EDIT:I tried to do a revision range merge as well, but I get a conflict on the properties of one of my files. The conflict message is:Could not add property 'svn:mergeinfo' on 'SkyPriceHome.php' because it is already deleted. If I click the "Edit conflict" button, the editor shows up comparing the two property files, but there is absolutely no difference between the new one and the old one. So where's the conflict? Is it safe to just use one or the other and ignore the conflict?

Edited by ShadowMage

Share this post


Link to post
Share on other sites

It sounds like it's complaining that the trunk was updated after branching, or that the branch is missing certain revisions from the trunk. I'm not sure why that would make that much of a difference though, I haven't seen an error like that with my SVN system. I guess you could always create a new branch, copy the files you've changed from the other branch, and then reintegrate the new one.

Share this post


Link to post
Share on other sites

Sounds like a hassle, but I guess I could give it a shot. It's a rather complex branch and there are quite a few changes. Better than leaving my repository in a broken state, though, I suppose...Thanks for the suggestion. Did you get a chance to read my edits on the OP? Does that change anything at all?

Share this post


Link to post
Share on other sites

If you've changed trunk significantly while working on the branch, the merge may not be possible to do automatically.That's what the conflict resolution thing is about. Are you sure the whole file is the same in both revisions? Maybe it's just the beginning that's the same in both. And either way, you should have the option to explicitly chose one file or the other (or choose different portions from both files), and thus resolve the conflict.

Share this post


Link to post
Share on other sites

:lol:Well, I've actually managed to hit the "retarted" buttons on Git as well... the only difference is that with it, you can delete the whole repository, and checkout a different copy of it that you then retry the whole thing with (decentralization FTW!).

Share this post


Link to post
Share on other sites
If you've changed trunk significantly while working on the branch, the merge may not be possible to do automatically. That's what the conflict resolution thing is about. Are you sure the whole file is the same in both revisions? Maybe it's just the beginning that's the same in both. And either way, you should have the option to explicitly chose one file or the other (or choose different portions from both files), and thus resolve the conflict.
If this is what you were referring to:
the editor shows up comparing the two property files, but there is absolutely no difference between the new one and the old one.
the "files" I am talking about are the SVN properties of the actual files/folders in my working copy. There are only about 8 or 10 lines, so yes I'm sure that the whole file is identical. Anyway, think I'm going to make a hot copy of my repo in its current state and try to do the range revision merge and select either of the revisions of the "conflicted" file and see what happens. If my repo stays too broken, I'll restore it and then try JSG's suggestion to rebuild the branch from scratch. EDIT: The range merge seems to have done the trick. I think I'm going to have to rethink how I track my development and live versions (again) because I seem to have also broken the ability to merge the branch I've been using for development into the trunk... <_<This whole version control thing is incredibly handy (invaluable even) but it also appears to be incredibly fragile if you don't know what the heck you're doing. :P Edited by ShadowMage

Share this post


Link to post
Share on other sites

As a good practice, if you are working extensively in a feature branch for long periods of a time while still doing significant work in the trunk, it is advisable to merge the trunk into your feature branch often (daily) to help prevent such a huge disparity in code deltas when it comes time to merge the branch back into the trunk.

Share this post


Link to post
Share on other sites
As a good practice, if you are working extensively in a feature branch for long periods of a time while still doing significant work in the trunk, it is advisable to merge the trunk into your feature branch often (daily) to help prevent such a huge disparity in code deltas when it comes time to merge the branch back into the trunk.
Yeah, I had been doing that. Apparently, somewhere along the line, though, something got goofed or didn't agree with something else and started a snowball.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×