Re: Problems Reintegrating the fsfs-format7 branch
From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Fri, 22 Mar 2013 19:05:11 +0000 (GMT)
I (Julian Foad) wrote:
> It took me a while to get my head back into this stuff, but yes it looks like
To say a bit more here, my concern was about the impact further down the road of leaving the history of "automatic" merges recorded by mergeinfo that only necessarily records the operative changes. If any software such as a merge history graphing tool (in general; I'm not talking about a specific one), and even the svn client merge code itself, wanted to know whether a merge in the past was a "complete" merge (of all the possible changes from the source branch), it would need to reexamine the history, scanning for whether the changes were operative or inoperative. The place I have reached in my thinking is merely that it's OK to do this and that it shouldn't impact anything currently and doesn't scuttle any longer term plans that I know of. It's not as if we're forcing people into this situation or even making it easy for them to get there: as soon as they do an automatic merge in the other direction, it will fill in the gaps.
When I was planning and writing the code, I originally wanted the merge to ignore no-op changes. There's a comment mentioning it, just inside the body of find_last_merged_location(). When considering how this would work in the more general case of trying to account for merges across all branches (not just directly between the source and target branch), this became overly complex. Then I realized that we wouldn't actually ever run into this situation if we just do complete merges (where all possible revisions are recorded as merged), so I dropped the idea at that point. Reviving it now seems right.
This is an archived mail posted to the Subversion Dev mailing list.