Re: [PATCH 1/2] [GSOC] cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP
- From
ZheNing Hu <adlternative@gmail.com>
- Date
- Jul 30, 2021, 14:15 UTC
- Message-ID
- <CAOLTT8Tj_8ESALm16OV=XxO604Qq_8KKJWYvzA7T=c=92uSyZg@mail.gmail.com>
- In-Reply-To
- <xmqqzgu43kkz.fsf@gitster.g>
Junio C Hamano <gitster@pobox.com> 于2021年7月30日周五 上午4:56写道:
Show 6 quoted lines
> > The patch is a bit hard to read, but I do not think this improves > the root cause of the issue at all, which is that "do we need to > delete the pseudoref?" decision is tied to and based on the presense > of the custom message in the environment variable. >
My original idea was to distinguish between cherry-pick calls by machines (git-rebase--preserve-merges.sh) and cherry-pick calls by people through an additional option "rebase-preserve-merges-mode".
Show 11 quoted lines
> The original issue was that we declared (erroneously) that the > presence of a custom message _means_ the caller is not a human but a > sequencing machinery that wants to deal with what is done via the > CHERRY_PICK_HEAD pseudoref itself, and your original issue was that > when a human user has the custom message envirnoment (either on > purpose or by mistake), the logic _misidentifies_ the call as if it > is made from a sequencing machinery and we lose the CHERRY_PICK_HEAD > pseudoref. The root cause is mistaking the correlation (sequencing > machinery uses the environment and it also does not want pseudoref) > as the causation (presense of the environment means we should remove > pseudoref).
Ok... Now I guess what you mean is to provide an option for git cherry-pick to specifically delete "CHERRY_PICK_HEAD", and this options is "hidden", it is not provided to users, it is only reserved for sequencing machinery. In this way, we separate print_advice() from deleting "CHERRY_PICK_HEAD". Then in the future, GIT_CHERRY_PICK_HELP will be deleted.
Thanks, -- ZheNing Hu