threads / discuss / 48465

Patch add: previous hunk across file boundaries

Subject: Patch add: previous hunk across file boundaries

## tl;dr

2 messages between May 11, 2018 and May 11, 2018.

replies: 1people: 2as markdown or json

Robert Dailey· May 11, 2018, 14:53 UTC · lore

I noticed that when stepping into a new file while doing `git add -p`, pressing `k` or `K` does not go back to the previous file. Is this a bug? Is there a setting for it? I googled & checked out the git docs, I didn't find any specific information on this.

Jeff King· May 11, 2018, 17:47 UTC · re: Robert Dailey · lore

Re: Patch add: previous hunk across file boundaries

On Fri, May 11, 2018 at 09:53:52AM -0500, Robert Dailey wrote:
> I noticed that when stepping into a new file while doing `git add -p`,
> pressing `k` or `K` does not go back to the previous file. Is this a
> bug? Is there a setting for it? I googled & checked out the git docs,
> I didn't find any specific information on this.

Nope, this is just the way that "-p" is implemented. It considers each file independently (another artifact of this is that after completing the hunks in a file the changes are staged, even if you quit while looking at a hunk in another file).

I agree that it would be nicer to consider the whole set atomically, with both "save and quit" and "quit but do not save" options. The way it works now is mostly due to the way that "add -p" grew out of the whole "add -i" interactive system, where you'd invoke the patch-adder on specific files from a menu.

So no, there's not a way to do what you want right now short of writing patch.

-Peff

← back to recent threads