Re: Issue with staging, unstaging, discarding hunks with no context
- From
- Phillip Wood <phillip.wood123@gmail.com>
- Date
- Oct 18, 2020, 09:12 UTC
- Message-ID
- <26316a94-ed0f-cf52-74f5-b20508345569@gmail.com>
- In-Reply-To
- <CAFfHKJ54smgBZrYTEmgoqmo7gMp+H8AxjL3GxnWVdF9K_MnoFg@mail.gmail.com>
Hi Daniel
On 18/10/2020 06:48, Daniel Dinnyes wrote:
Show 5 quoted lines
> The problem I have is described in more detail in the issue here with magit: > https://github.com/magit/magit/issues/4222 > > The conclusion there was that this is an upstream problem due to some > recent changes in git.
That's not my reading of that issue. Specifically this comment by kyleam
You're blaming the wrong git :) I introduced this change with
6b3c90d (magit-apply-patch: Abort when there is no context,
2019-08-02). It was prompted by gh-3924, which also brought
about d508f02 (apply: Adjust hunk line positions for partial
application, 2019-07-28).Seems to point to this being a change in magit not git.
`git apply --unidiff-zero` will apply zero context patches but as a safety measure they will be rejected without `--unidiff-zero`
Best Wishes
Phillip
Show 21 quoted lines
> As it has been mentioned in the issue itself, it is understood that > git had problems with handling hunks without context, so I assume this > upstream change was to eliminate such issues. > > Yet my experience was that hunks without context worked fine before > 80% of the time, except if they were right next to each other, they > might get mixed/messed up. Even in that case, I found that if I > staged/unstaged hunks in top-down order in magit it didn't cause > problems. > > Without handling no-context hunks, I see I will have to stash/redo > entire change-sets, to be able to commit logically separate hunks > separately. This would be a major PITA. > > Is there a plan to reintroduce handling of hunks with 0 line context > in the future, or is this something which is technically not going to > be possible ever? > > Cheers, > Dan >