Ross Kabus <rkabus@xxxxxxxxxxxx> writes: > This change makes it such that commit-tree -F never appends a newline > character to the supplied commit message (either from file or stdin). > > Previously, commit-tree -F would always append a newline character to > the text brought in from file or stdin. This is not correct. The command adds a missing newline only when the input ended in an incompete line. I'd rephrase the whole thing like this: commit-tree: do not complete line in -F input "git commit-tree -F <file>", unlike "cat <file> | git commit-tree" (i.e. feeding the same contents from the standard input), added a missing final newline when the input ended in an incomplete line. Correct this inconsistency by leaving the incomplete line as-is, as erring on the side of not touching the input is preferrable and expected for a plumbing command like "commit-tree". if I were doing this patch. Thanks. > Signed-off-by: Ross Kabus <rkabus@xxxxxxxxxxxx> > --- > builtin/commit-tree.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/builtin/commit-tree.c b/builtin/commit-tree.c > index 19e898fa4..2177251e2 100644 > --- a/builtin/commit-tree.c > +++ b/builtin/commit-tree.c > @@ -102,7 +102,6 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix) > if (fd && close(fd)) > die_errno("git commit-tree: failed to close '%s'", > argv[i]); > - strbuf_complete_line(&buffer); > continue; > }