commit -C: skip blank lines at the beginning of the message

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>
This commit is contained in:
Johannes Schindelin 2016-06-29 16:14:42 +02:00 коммит произвёл Junio C Hamano
Родитель 4e1b06da25
Коммит 84e213a30a
1 изменённых файлов: 1 добавлений и 1 удалений

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

@ -712,7 +712,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,
char *buffer; char *buffer;
buffer = strstr(use_message_buffer, "\n\n"); buffer = strstr(use_message_buffer, "\n\n");
if (buffer) if (buffer)
strbuf_addstr(&sb, buffer + 2); strbuf_addstr(&sb, skip_blank_lines(buffer + 2));
hook_arg1 = "commit"; hook_arg1 = "commit";
hook_arg2 = use_message; hook_arg2 = use_message;
} else if (fixup_message) { } else if (fixup_message) {