From: Omar Polo Subject: Re: rebase suffers '?' conflicts To: Stefan Sperling Cc: Mark Jamsek , Christian Weisgerber , gameoftrees@openbsd.org Date: Wed, 12 Apr 2023 20:31:16 +0200 On 2023/04/12 17:44:28 +0200, Stefan Sperling wrote: > On Wed, Apr 12, 2023 at 05:09:07PM +0200, Stefan Sperling wrote: > > On Thu, Apr 13, 2023 at 12:21:29AM +1000, Mark Jamsek wrote: > > > Nice! Thanks for the explanation, it all makes sense and is good to > > > know. I thought this was going to be a lot more work to fix. > > > > My fix is not quite correct. The contents of the file 'beta' are > > still from newbranch at the end of the test. > > I need to take another look at this. > > Turns out there is another fairly trivial bug: > > rebase -a is opening the wrong commit to diff against for checkout. > Files should be checked out from the commit we are moving the work > tree towards, rather than from the tip commit of the temporary branch > we are moving away from. > To fix the issue we can open the commit once the base ID has been > changed, instead of before. Now we see beta getting updated as part > of 'got rebase -a', as it should be. > > The histedit abort command has the same bug. > > The previously diagnosed issue is real regardless and affects a regression > test in update.sh. I have tweaked this fix slightly to only set the new > base commit ID if one is expected to be set on this file index entry. > > Two diffs below: ok op@