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. Signed-off-by: Sven Strickroth <email@xxxxxxxxxx> --- builtin/commit.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/builtin/commit.c b/builtin/commit.c index d054f84..0e48e1d 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -725,14 +725,18 @@ static int prepare_to_commit(const char *index_file, const char *prefix, format_commit_message(commit, "fixup! %s\n\n", &sb, &ctx); hook_arg1 = "message"; - } else if (!stat(git_path_merge_msg(), &statbuf)) { - if (strbuf_read_file(&sb, git_path_merge_msg(), 0) < 0) - die_errno(_("could not read MERGE_MSG")); - hook_arg1 = "merge"; - } else if (!stat(git_path_squash_msg(), &statbuf)) { - if (strbuf_read_file(&sb, git_path_squash_msg(), 0) < 0) - die_errno(_("could not read SQUASH_MSG")); - hook_arg1 = "squash"; + } else if (!stat(git_path_squash_msg(), &statbuf) || + !stat(git_path_merge_msg(), &statbuf)) { + if (!stat(git_path_squash_msg(), &statbuf)) { + if (strbuf_read_file(&sb, git_path_squash_msg(), 0) < 0) + die_errno(_("could not read SQUASH_MSG")); + hook_arg1 = "squash"; + } else + hook_arg1 = "merge"; + if (!stat(git_path_merge_msg(), &statbuf)) { + if (strbuf_read_file(&sb, git_path_merge_msg(), 0) < 0) + die_errno(_("could not read MERGE_MSG")); + } } else if (template_file) { if (strbuf_read_file(&sb, template_file, 0) < 0) die_errno(_("could not read '%s'"), template_file); -- 2.7.0.windows.1 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html