commit -C: skip blank lines at the beginning of the message
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 29 Jun 2016 14:14:42 +0000 (16:14 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 29 Jun 2016 21:56:37 +0000 (14:56 -0700)
Consistent with the pretty-printing machinery, we skip leading blank
lines (if any) of existing commit messages.

While Git itself only produces commit objects with a single empty line
between commit header and commit message, it is legal to have more than
one blank line (i.e. lines containing only white space, or no
characters) at the beginning of the commit message, and the
pretty-printing code already handles that.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/commit.c
index c2ebea4ed31d13cfe48603042edfb0ca63f5de6e..b0effbb929a654be8ed8f5120715971960e0db5b 100644 (file)
@@ -712,7 +712,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,
                char *buffer;
                buffer = strstr(use_message_buffer, "\n\n");
                if (buffer)
-                       strbuf_addstr(&sb, buffer + 2);
+                       strbuf_addstr(&sb, skip_blank_lines(buffer + 2));
                hook_arg1 = "commit";
                hook_arg2 = use_message;
        } else if (fixup_message) {