Skip to content

Commit b659f81

Browse files
committed
Merge branch 'jk/commit-C-pick-empty' into maint
"git commit --allow-empty-message -C $commit" did not work when the commit did not have any log message. * jk/commit-C-pick-empty: commit: do not complain of empty messages from -C
2 parents 4d27d8c + 076cbd6 commit b659f81

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

builtin/commit.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -650,9 +650,8 @@ static int prepare_to_commit(const char *index_file, const char *prefix,
650650
} else if (use_message) {
651651
char *buffer;
652652
buffer = strstr(use_message_buffer, "\n\n");
653-
if (!use_editor && (!buffer || buffer[2] == '\0'))
654-
die(_("commit has empty message"));
655-
strbuf_add(&sb, buffer + 2, strlen(buffer + 2));
653+
if (buffer)
654+
strbuf_add(&sb, buffer + 2, strlen(buffer + 2));
656655
hook_arg1 = "commit";
657656
hook_arg2 = use_message;
658657
} else if (fixup_message) {

t/t7500-commit.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,8 @@ test_expect_success 'Commit without message is allowed with --allow-empty-messag
223223
git add foo &&
224224
>empty &&
225225
git commit --allow-empty-message <empty &&
226-
commit_msg_is ""
226+
commit_msg_is "" &&
227+
git tag empty-message-commit
227228
'
228229

229230
test_expect_success 'Commit without message is no-no without --allow-empty-message' '
@@ -240,6 +241,14 @@ test_expect_success 'Commit a message with --allow-empty-message' '
240241
commit_msg_is "hello there"
241242
'
242243

244+
test_expect_success 'commit -C empty respects --allow-empty-message' '
245+
echo more >>foo &&
246+
git add foo &&
247+
test_must_fail git commit -C empty-message-commit &&
248+
git commit -C empty-message-commit --allow-empty-message &&
249+
commit_msg_is ""
250+
'
251+
243252
commit_for_rebase_autosquash_setup () {
244253
echo "first content line" >>foo &&
245254
git add foo &&

0 commit comments

Comments
 (0)