git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Bug? Git won't apply a split hunk that went through a text editor

From
PWPhillip Wood <phillip.wood@talktalk.net>
Date
Aug 10, 2018, 19:14 UTC
Message-ID
<b487318b-0746-e00b-f088-bfc5bd086ed5@talktalk.net>
In-Reply-To
<20180810182745.GA8876@sigill.intra.peff.net>
Hi Philip
Thanks for CC'ing me Peff.
On 10/08/18 19:27, Jeff King wrote:
Show 22 quoted lines
> On Thu, Aug 09, 2018 at 08:17:36PM -0700, Philip White wrote:
> 
>> I’d like to report what I suspect is a bug in Git, tested in 2.18 and
>> 2.14. (I’d be delighted to be corrected if it is my own
>> misunderstanding.) I’m reporting it here based on guidance from
>> https://git-scm.com/community.
>>
>> I created a minimal testcase with a detailed README here:
>> https://github.com/philipmw/git-bugreport-2018-hunk-fail
>>
>> Overview of the bug:
>>
>> When interactively selecting hunks to apply, using `git checkout -p
>> <tree> <file>`, git will correctly apply an unmodified hunk, but will
>> refuse to apply a hunk that went through a text editor ("e" command),
>> even when I made no changes in the text editor.
>>
>> Thanks for any advice or attention you can give to this matter.
> 
> This sounds like the bug discussed in:
> 
>    https://public-inbox.org/git/be321106-2f10-e678-8237-449d2dd30fee@talktalk.net/

Looking at the bug report Philip linked to I think this is a long standing bug where splitting a patch and then editing one of the subhunks can fail because git-add--interactive.perl doesn't know how to stitch the subhunks back together when one of them has been edited. There's a failing test in t3701-add-interactive.sh to document this. It is on my radar to fix this (at least in simple cases) but I haven't got round to it yet.

Thanks Philip for the detailed report
Best Wishes
Phillip
Show 8 quoted lines
> (that message and the surrounding thread).
> 
> The fix is in f4d35a6b49 (add -p: fix counting empty context lines in
> edited patches, 2018-06-11), which is in the current tip of 'master',
> but not yet any released version.
> 
> -Peff
> 
Previous: Jeff King
Message 3 of 3 in “Bug? Git won't apply a split hunk that went through a text editor”
  1. Philip WhiteAug 10, 2018
  2. Jeff KingAug 10, 2018
  3. Phillip WoodAug 10, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.