add-patch: add NEEDSWORK about comparing commits

The two versions of add-patch has special-casing for the literal
revision "HEAD". However, we want to handle other ways of saying "HEAD"
in the same way.[0] Add a NEEDSWORK to the add-patch code that does this
so that it can be addressed later.

[0]: https://lore.kernel.org/git/xmqqsgat7ttf.fsf@gitster.c.googlers.com/

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Denton Liu 2020-10-07 00:56:17 -07:00 коммит произвёл Junio C Hamano
Родитель c693ef781b
Коммит f82a9e517f
2 изменённых файлов: 15 добавлений и 0 удалений

Просмотреть файл

@ -1646,6 +1646,14 @@ int run_add_p(struct repository *r, enum add_p_mode mode,
if (mode == ADD_P_STASH)
s.mode = &patch_mode_stash;
else if (mode == ADD_P_RESET) {
/*
* NEEDSWORK: Instead of comparing to the literal "HEAD",
* compare the commit objects instead so that other ways of
* saying the same thing (such as "@") are also handled
* appropriately.
*
* This applies to the cases below too.
*/
if (!revision || !strcmp(revision, "HEAD"))
s.mode = &patch_mode_reset_head;
else

Просмотреть файл

@ -1807,6 +1807,13 @@ sub process_args {
$arg = shift @ARGV or die __("missing --");
if ($arg ne '--') {
$patch_mode_revision = $arg;
# NEEDSWORK: Instead of comparing to the literal "HEAD",
# compare the commit objects instead so that other ways of
# saying the same thing (such as "@") are also handled
# appropriately.
#
# This applies to the cases below too.
$patch_mode = ($arg eq 'HEAD' ?
'reset_head' : 'reset_nothead');
$arg = shift @ARGV or die __("missing --");