On Wed, Aug 25, 2010 at 05:00:09PM +0100, Julian Foad wrote:
> On Tue, 2010-08-24, Julian Foad wrote:
> [...]
> > What should happen?
> > -------------------
> > 
> > I think the required changes are:
> > 
> > * Commit should unconditionally bail out if there are any conflicts
> > inside a node being committed.  No more testing the 'keep_local' flag at
> > this stage.
> 
> I'm sure that's the behaviour we should have.  The only thing I don't
> understand is why Neels changed harvest_committables() to ignore
> conflicts if 'keep_local' is set in r878027.  That commit was about
> fixing some problems with keep_local, but it's not clear to me why this
> particular change was made.  I assumed it was to preserve some 1.6.x
> behaviour, but I've just tested with a 1.6.x branch build and it doesn't
> allow the commit.
> 
> I'm removing that condition, so the commit will fail if there are
> unresolved conflicts, even inside a directory scheduled for delete.
> This doesn't cause any test failures except tree_conflicts_tests 17
> (which is specifically about this behaviour) and it brings the commit
> code back into line with 1.6.x in which
> bail_on_tree_conflicted_children() was called unconditionally.
> 
> I've committed this in 989189.
> 
> If Neels or anyone can confirm this diagnosis, that would be great.

I guess that auto-resolving tree conflicts inside a locally deleted
subtree was intended as a user convenience.
But requiring an explicit 'svn resolve' invocation to resolve the conflict
before commit is in line with the general behaviour of Subversion, so I think
your change (reverting Neels changes) is sound.

Stefan

Reply via email to