From ceb4d746f9b8d963bf24ef0ebecd481a8fe1533b Mon Sep 17 00:00:00 2001 From: Vasyl Zuziak Date: Fri, 27 Jun 2025 10:20:01 +0200 Subject: [PATCH] Revert "sequencer: make it clearer that commit descriptions are just comments" This reverts commit e42667241de12840ef58c0ba1c060b86c850bae0. --- sequencer.c | 16 ++----- t/t3404-rebase-interactive.sh | 54 +++++++++++----------- t/t3415-rebase-autosquash.sh | 14 +++--- t/t3430-rebase-merges.sh | 10 ++-- t/t5520-pull.sh | 2 +- t/t7512-status-help.sh | 86 +++++++++++++++++------------------ 6 files changed, 88 insertions(+), 94 deletions(-) diff --git a/sequencer.c b/sequencer.c index 9456ca6ee97db4..157d73fe11e4f5 100644 --- a/sequencer.c +++ b/sequencer.c @@ -5904,11 +5904,11 @@ static int make_script_with_merges(struct pretty_print_context *pp, /* Create a label from the commit message */ strbuf_reset(&label_from_message); - if (skip_prefix(oneline.buf, "# Merge ", &p1) && + if (skip_prefix(oneline.buf, "Merge ", &p1) && (p1 = strchr(p1, '\'')) && (p2 = strchr(++p1, '\''))) strbuf_add(&label_from_message, p1, p2 - p1); - else if (skip_prefix(oneline.buf, "# Merge pull request ", + else if (skip_prefix(oneline.buf, "Merge pull request ", &p1) && (p1 = strstr(p1, " from "))) strbuf_addstr(&label_from_message, p1 + strlen(" from ")); @@ -5943,7 +5943,7 @@ static int make_script_with_merges(struct pretty_print_context *pp, strbuf_addstr(&buf, label_oid(oid, label, &state)); } - strbuf_addf(&buf, " %s", oneline.buf); + strbuf_addf(&buf, " # %s", oneline.buf); FLEX_ALLOC_STR(entry, string, buf.buf); oidcpy(&entry->entry.oid, &commit->object.oid); @@ -6025,7 +6025,7 @@ static int make_script_with_merges(struct pretty_print_context *pp, else { strbuf_reset(&oneline); pretty_print_commit(pp, commit, &oneline); - strbuf_addf(out, "%s %s %s\n", + strbuf_addf(out, "%s %s # %s\n", cmd_reset, to, oneline.buf); } } @@ -6093,14 +6093,8 @@ int sequencer_make_script(struct repository *r, struct strbuf *out, int argc, git_config_get_string("rebase.instructionFormat", &format); if (!format || !*format) { free(format); - format = xstrdup("# %s"); + format = xstrdup("%s"); } - if (*format != '#') { - char *temp = format; - format = xstrfmt("# %s", temp); - free(temp); - } - get_commit_format(format, &revs); free(format); pp.fmt = revs.commit_format; diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh index 6bac217ed3555e..2aee9789a2fae2 100755 --- a/t/t3404-rebase-interactive.sh +++ b/t/t3404-rebase-interactive.sh @@ -1468,7 +1468,7 @@ test_expect_success 'rebase -i respects rebase.missingCommitsCheck = warn' ' cat >expect <<-EOF && Warning: some commits may have been dropped accidentally. Dropped commits (newer to older): - - $(git log --format="%h # %s" -1 primary) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary) To avoid this message, use "drop" to explicitly remove a commit. EOF test_config rebase.missingCommitsCheck warn && @@ -1486,8 +1486,8 @@ test_expect_success 'rebase -i respects rebase.missingCommitsCheck = error' ' cat >expect <<-EOF && Warning: some commits may have been dropped accidentally. Dropped commits (newer to older): - - $(git log --format="%h # %s" -1 primary) - - $(git log --format="%h # %s" -1 primary~2) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary~2) To avoid this message, use "drop" to explicitly remove a commit. Use '\''git config rebase.missingCommitsCheck'\'' to change the level of warnings. @@ -1530,11 +1530,11 @@ test_expect_success 'rebase --edit-todo respects rebase.missingCommitsCheck = ig test_expect_success 'rebase --edit-todo respects rebase.missingCommitsCheck = warn' ' cat >expect <<-EOF && error: invalid command '\''pickled'\'' - error: invalid line 1: pickled $(git log --format="%h # %s" -1 primary~4) + error: invalid line 1: pickled $(git rev-list --pretty=oneline --abbrev-commit -1 primary~4) Warning: some commits may have been dropped accidentally. Dropped commits (newer to older): - - $(git log --format="%h # %s" -1 primary) - - $(git log --format="%h # %s" -1 primary~4) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary~4) To avoid this message, use "drop" to explicitly remove a commit. EOF head -n5 expect >expect.2 && @@ -1565,11 +1565,11 @@ test_expect_success 'rebase --edit-todo respects rebase.missingCommitsCheck = wa test_expect_success 'rebase --edit-todo respects rebase.missingCommitsCheck = error' ' cat >expect <<-EOF && error: invalid command '\''pickled'\'' - error: invalid line 1: pickled $(git log --format="%h # %s" -1 primary~4) + error: invalid line 1: pickled $(git rev-list --pretty=oneline --abbrev-commit -1 primary~4) Warning: some commits may have been dropped accidentally. Dropped commits (newer to older): - - $(git log --format="%h # %s" -1 primary) - - $(git log --format="%h # %s" -1 primary~4) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary) + - $(git rev-list --pretty=oneline --abbrev-commit -1 primary~4) To avoid this message, use "drop" to explicitly remove a commit. Use '\''git config rebase.missingCommitsCheck'\'' to change the level of warnings. @@ -1642,11 +1642,11 @@ test_expect_success 'respects rebase.abbreviateCommands with fixup, squash and e test_commit "fixup! first" file2.txt "first line again" first_fixup && test_commit "squash! second" file1.txt "another line here" second_squash && cat >expected <<-EOF && - p $(git rev-list --abbrev-commit -1 first) # first - f $(git rev-list --abbrev-commit -1 first_fixup) # fixup! first + p $(git rev-list --abbrev-commit -1 first) first + f $(git rev-list --abbrev-commit -1 first_fixup) fixup! first x git show HEAD - p $(git rev-list --abbrev-commit -1 second) # second - s $(git rev-list --abbrev-commit -1 second_squash) # squash! second + p $(git rev-list --abbrev-commit -1 second) second + s $(git rev-list --abbrev-commit -1 second_squash) squash! second x git show HEAD EOF git checkout abbrevcmd && @@ -1665,7 +1665,7 @@ test_expect_success 'static check of bad command' ' set_fake_editor && test_must_fail env FAKE_LINES="1 2 3 bad 4 5" \ git rebase -i --root 2>actual && - test_grep "pickled $(git log --format="%h # %s" -1 primary~1)" \ + test_grep "pickled $(git rev-list --oneline -1 primary~1)" \ actual && test_grep "You can fix this with .git rebase --edit-todo.." \ actual && @@ -1865,15 +1865,15 @@ test_expect_success '--update-refs adds label and update-ref commands' ' set_cat_todo_editor && cat >expect <<-EOF && - pick $(git log -1 --format=%h J) # J - fixup $(git log -1 --format=%h update-refs) # fixup! J # empty + pick $(git log -1 --format=%h J) J + fixup $(git log -1 --format=%h update-refs) fixup! J # empty update-ref refs/heads/second update-ref refs/heads/first - pick $(git log -1 --format=%h K) # K - pick $(git log -1 --format=%h L) # L - fixup $(git log -1 --format=%h is-not-reordered) # fixup! L # empty + pick $(git log -1 --format=%h K) K + pick $(git log -1 --format=%h L) L + fixup $(git log -1 --format=%h is-not-reordered) fixup! L # empty update-ref refs/heads/third - pick $(git log -1 --format=%h M) # M + pick $(git log -1 --format=%h M) M update-ref refs/heads/no-conflict-branch update-ref refs/heads/is-not-reordered update-ref refs/heads/shared-tip @@ -1905,19 +1905,19 @@ test_expect_success '--update-refs adds commands with --rebase-merges' ' cat >expect <<-EOF && label onto reset onto - pick $(git log -1 --format=%h branch2~1) # F - pick $(git log -1 --format=%h branch2) # I + pick $(git log -1 --format=%h branch2~1) F + pick $(git log -1 --format=%h branch2) I update-ref refs/heads/branch2 label branch2 reset onto - pick $(git log -1 --format=%h refs/heads/second) # J + pick $(git log -1 --format=%h refs/heads/second) J update-ref refs/heads/second update-ref refs/heads/first - pick $(git log -1 --format=%h refs/heads/third~1) # K - pick $(git log -1 --format=%h refs/heads/third) # L - fixup $(git log -1 --format=%h update-refs-with-merge) # fixup! L # empty + pick $(git log -1 --format=%h refs/heads/third~1) K + pick $(git log -1 --format=%h refs/heads/third) L + fixup $(git log -1 --format=%h update-refs-with-merge) fixup! L # empty update-ref refs/heads/third - pick $(git log -1 --format=%h HEAD~2) # M + pick $(git log -1 --format=%h HEAD~2) M update-ref refs/heads/no-conflict-branch merge -C $(git log -1 --format=%h HEAD~1) branch2 # merge update-ref refs/heads/merge-branch diff --git a/t/t3415-rebase-autosquash.sh b/t/t3415-rebase-autosquash.sh index 26b42a526a1944..fcc40d6fe1fd5b 100755 --- a/t/t3415-rebase-autosquash.sh +++ b/t/t3415-rebase-autosquash.sh @@ -257,8 +257,8 @@ test_expect_success 'auto squash of fixup commit that matches branch name which GIT_SEQUENCE_EDITOR="cat >tmp" git rebase --autosquash -i HEAD^^ && sed -ne "/^[^#]/{s/[0-9a-f]\{7,\}/HASH/g;p;}" tmp >actual && cat <<-EOF >expect && - pick HASH # second commit - pick HASH # fixup! self-cycle # empty + pick HASH second commit + pick HASH fixup! self-cycle # empty EOF test_cmp expect actual ' @@ -311,10 +311,10 @@ test_auto_fixup_fixup () { parent2=$(git rev-parse --short HEAD^^) && parent3=$(git rev-parse --short HEAD^^^) && cat >expected <<-EOF && - pick $parent3 # first commit - $1 $parent1 # $1! first - $1 $head # $1! $2! first - pick $parent2 # second commit + pick $parent3 first commit + $1 $parent1 $1! first + $1 $head $1! $2! first + pick $parent2 second commit EOF test_cmp expected actual ) && @@ -389,7 +389,7 @@ test_expect_success 'autosquash with empty custom instructionFormat' ' set_cat_todo_editor && test_must_fail git -c rebase.instructionFormat= \ rebase --autosquash --force-rebase -i HEAD^ >actual && - git log -1 --format="pick %h # %s" >expect && + git log -1 --format="pick %h %s" >expect && test_cmp expect actual ) ' diff --git a/t/t3430-rebase-merges.sh b/t/t3430-rebase-merges.sh index cc627e34a741e6..ff81adab8cf6cb 100755 --- a/t/t3430-rebase-merges.sh +++ b/t/t3430-rebase-merges.sh @@ -115,18 +115,18 @@ test_expect_success 'generate correct todo list' ' label onto reset onto - pick $b # B + pick $b B label first reset onto - pick $c # C + pick $c C label branch-point - pick $f # F - pick $g # G + pick $f F + pick $g G label second reset branch-point # C - pick $d # D + pick $d D merge -C $e first # E merge -C $h second # H diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh index 63c9a8f04b1cb9..47534f1062d203 100755 --- a/t/t5520-pull.sh +++ b/t/t5520-pull.sh @@ -813,7 +813,7 @@ test_expect_success 'git pull --rebase does not reapply old patches' ' cd dst && test_must_fail git pull --rebase && cat .git/rebase-merge/done .git/rebase-merge/git-rebase-todo >work && - grep -v -e ^\# -e ^$ work >patches && + grep -v -e \# -e ^$ work >patches && test_line_count = 1 patches && rm -f work ) diff --git a/t/t7512-status-help.sh b/t/t7512-status-help.sh index 25e8e9711f8fef..802f8f704c62eb 100755 --- a/t/t7512-status-help.sh +++ b/t/t7512-status-help.sh @@ -139,7 +139,7 @@ test_expect_success 'status during rebase -i when conflicts unresolved' ' cat >expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <expected <