Skip to content

pr-1010/adlternative/cherry-pick-help-fix-3-v5

From: ZheNing Hu <adlternative@gmail.com>

"git cherry-pick", upon seeing a conflict, says:

hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

as if running "git commit" to conclude the resolution of
this single step were the end of the story.  This stems from
the fact that the command originally was to pick a single
commit and not a range of commits, and the message was
written back then and has not been adjusted.

When picking a range of commits and the command stops with a
conflict in the middle of the range, however, after
resolving the conflict and (optionally) recording the result
with "git commit", the user has to run "git cherry-pick
--continue" to have the rest of the range dealt with,
"--skip" to drop the current commit, or "--abort" to discard
the series.

Suggest use of "git cherry-pick --continue/--skip/--abort"
so that the message also covers the case where a range of
commits are being picked.

Similarly, this optimization can be applied to git revert,
suggest use of "git revert --continue/--skip/--abort" so
that the message also covers the case where a range of
commits are being reverted.

It is worth mentioning that now we use advice() to print
the content of GIT_CHERRY_PICK_HELP in print_advice(), each
line of output will start with "hint: ".

Mentored-by: Christian Couder <christian.couder@gmail.com>
Mentored-by Hariom Verma <hariom18599@gmail.com>:
Helped-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: ZheNing Hu <adlternative@gmail.com>

Submitted-As: https://lore.kernel.org/git/pull.1010.v5.git.1629075306706.gitgitgadget@gmail.com
In-Reply-To: https://lore.kernel.org/git/pull.1010.git.1627714877.gitgitgadget@gmail.com
In-Reply-To: https://lore.kernel.org/git/pull.1010.v2.git.1627953383.gitgitgadget@gmail.com
In-Reply-To: https://lore.kernel.org/git/pull.1010.v3.git.1628142482640.gitgitgadget@gmail.com
In-Reply-To: https://lore.kernel.org/git/pull.1010.v4.git.1628936863733.gitgitgadget@gmail.com
Assets 2