On Tue, Jul 18, 2017 at 12:27:42PM +0100, Julian Foad wrote:
> I just ran into the following bug. It appears that the conflict resolver
> doesn't properly follow branch (copy) history when searching for details.
> $ svn sw ^/subversion/branches/shelve-checkpoint3
> $ svn merge ^/subversion/trunk_at_1802151
> --- Merging r1801593 through r1802151 into '.':
> C tools/dist/templates/nightly-candidates.ezt
> --- Recording mergeinfo for merge of r1801593 through r1802151 into '.':
> U .
> Summary of conflicts:
> Tree conflicts: 1
> Searching tree conflict details for
> 'tools/dist/templates/nightly-candidates.ezt' in repository:
> Checking r1801838...svn: warning: apr_err=SVN_ERR_FS_NOT_FOUND
> svn: warning: W160013:
> path not found
> svn: E155027: Failure occurred resolving one or more conflicts
> The conflict is a delete-delete: the file 'nightly-candidates.ezt' was
> deleted in branch shelve-checkpoint_at_r1801823 (note: that's a different
> branch) and also in trunk_at_r1801838. That branch was branched to
> shelve-checkpoint3 in r1802284.
> The problem is that the look-up of the parent full-path (including
> branch name) fails because the branch 'shelve-checkpoint3' didn't exist
> in r1802151.
> - Julian
Thanks for finding this, Julian! Could you please file an issue for this?
I expect that we'll find several such bugs. The related path hunting code
needs thorough review and testing. It passes the tests we have, but it
seems likely that it will still get confused in some situations.
That's one of the reason why I think we should issue an alpha release
(and eventually release 1.10.0) to get sufficient testing.
I don't expect this feature to be fully stable for the .0 release.
Received on 2017-07-18 18:46:15 CEST