Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-23 Thread Ben Peart
On 7/20/2018 7:02 PM, Elijah Newren wrote: On Fri, Jul 20, 2018 at 3:05 PM, Junio C Hamano wrote: Elijah Newren writes: Ah, okay, that's helpful. So, if there are conflicts, it should be free to clear the skip_worktree flag. Since merge-recursive calls add_cacheinfo() for all entries it

Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Elijah Newren
On Fri, Jul 20, 2018 at 3:05 PM, Junio C Hamano wrote: > Elijah Newren writes: > >> Ah, okay, that's helpful. So, if there are conflicts, it should be >> free to clear the skip_worktree flag. Since merge-recursive calls >> add_cacheinfo() for all entries it needs to update, which deletes the >>

Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Junio C Hamano
Elijah Newren writes: > Ah, okay, that's helpful. So, if there are conflicts, it should be > free to clear the skip_worktree flag. Since merge-recursive calls > add_cacheinfo() for all entries it needs to update, which deletes the > old cache entry and just makes new ones, we get that for free.

Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Elijah Newren
On Fri, Jul 20, 2018 at 2:13 PM, Junio C Hamano wrote: > Elijah Newren writes: > >> But that brings up another interesting question. What if a merge >> *does* modify a file for which you have skip-worktree set? >> Previously, it'd clear the bit and write the file to the working tree, >> but that

Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Junio C Hamano
Elijah Newren writes: > But that brings up another interesting question. What if a merge > *does* modify a file for which you have skip-worktree set? > Previously, it'd clear the bit and write the file to the working tree, > but that was by no means an explicit decision; At least in my mind, th

Re: [BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Elijah Newren
On Fri, Jul 20, 2018 at 12:53 PM, Ben Peart wrote: > As we were attempting to migrate to 2.18 some of our internal functional > tests failed. The tests that failed were testing merge and cherry-pick when > there was a merge conflict. Our tests run with sparse-checkout enabled which > is what expo

[BUG] merge-recursive overly aggressive when skipping updating the working tree

2018-07-20 Thread Ben Peart
As we were attempting to migrate to 2.18 some of our internal functional tests failed. The tests that failed were testing merge and cherry-pick when there was a merge conflict. Our tests run with sparse-checkout enabled which is what exposed the bug. What is happening is that in merge_recursi