summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-09-19 01:47:56 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-09-19 01:47:56 (GMT)
commit0543de438f39cc99bcde807313e972a6caac5840 (patch)
tree4237ec20e44a097a32834a3d17b4413b47eae6b4 /builtin
parent09595ab3818619a34281b85e1fb98802182e12a2 (diff)
parentf8b863598c991a5441d97e5dc59af8968ea37e37 (diff)
downloadgit-0543de438f39cc99bcde807313e972a6caac5840.zip
git-0543de438f39cc99bcde807313e972a6caac5840.tar.gz
git-0543de438f39cc99bcde807313e972a6caac5840.tar.bz2
Merge branch 'sb/merge-commit-msg-hook'
As "git commit" to conclude a conflicted "git merge" honors the commit-msg hook, "git merge" that recoreds a merge commit that cleanly auto-merges should, but it didn't. * sb/merge-commit-msg-hook: builtin/merge: honor commit-msg hook for merges
Diffstat (limited to 'builtin')
-rw-r--r--builtin/merge.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/builtin/merge.c b/builtin/merge.c
index 3672e38..66b7186 100644
--- a/builtin/merge.c
+++ b/builtin/merge.c
@@ -73,6 +73,7 @@ static int show_progress = -1;
static int default_to_upstream = 1;
static int signoff;
static const char *sign_commit;
+static int verify_msg = 1;
static struct strategy all_strategy[] = {
{ "recursive", DEFAULT_TWOHEAD | NO_TRIVIAL },
@@ -236,6 +237,7 @@ static struct option builtin_merge_options[] = {
N_("GPG sign commit"), PARSE_OPT_OPTARG, NULL, (intptr_t) "" },
OPT_BOOL(0, "overwrite-ignore", &overwrite_ignore, N_("update ignored files (default)")),
OPT_BOOL(0, "signoff", &signoff, N_("add Signed-off-by:")),
+ OPT_BOOL(0, "verify", &verify_msg, N_("verify commit-msg hook")),
OPT_END()
};
@@ -780,6 +782,12 @@ static void prepare_to_commit(struct commit_list *remoteheads)
if (launch_editor(git_path_merge_msg(), NULL, NULL))
abort_commit(remoteheads, NULL);
}
+
+ if (verify_msg && run_commit_hook(0 < option_edit, get_index_file(),
+ "commit-msg",
+ git_path_merge_msg(), NULL))
+ abort_commit(remoteheads, NULL);
+
read_merge_msg(&msg);
strbuf_stripspace(&msg, 0 < option_edit);
if (!msg.len)