Re: [PATCH] commit: do not lose SQUASH_MSG contents
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:08:51
Sven Strickroth [off-list ref] writes:
When concluding a conflicted "git merge --squash", the command failed to read SQUASH_MSG that was prepared by "git merge", and showed only the "# Conflicts:" list of conflicted paths. Place the contents from SQUASH_MSG at the beginning, just like we show the commit log skeleton first when concluding a normal merge, and then show the "# Conflicts:" list, to help the user write the log message for the resulting commit. Test by Junio C Hamano [off-list ref]. Signed-off-by: Sven Strickroth <redacted> ---
You must somehow read my mind, as I was about to send a friendly ping to you saying "unless you have a reroll, I'll squash the test in" ;-) Will replace those two commits with this one (after fixing one nit). Thanks.
quoted hunk
builtin/commit.c | 11 ++++++++++- t/t7600-merge.sh | 28 ++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-)diff --git a/builtin/commit.c b/builtin/commit.c index d054f84..d40b788 100644 --- a/builtin/commit.c +++ b/builtin/commit.c@@ -726,9 +726,18 @@ static int prepare_to_commit(const char *index_file, const char *prefix, &sb, &ctx); hook_arg1 = "message"; } else if (!stat(git_path_merge_msg(), &statbuf)) { + /* + * prepend SQUASH_MSG here if it exists and a + * "merge --squash" was originally performed + */
Here is a nit ("*/" needs one more space indent to align).