diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-09-19 04:47:56 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-09-19 04:47:56 +0300 |
commit | 0543de438f39cc99bcde807313e972a6caac5840 (patch) | |
tree | 4237ec20e44a097a32834a3d17b4413b47eae6b4 /builtin/merge.c | |
parent | 09595ab3818619a34281b85e1fb98802182e12a2 (diff) | |
parent | f8b863598c991a5441d97e5dc59af8968ea37e37 (diff) |
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/merge.c')
-rw-r--r-- | builtin/merge.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/builtin/merge.c b/builtin/merge.c index 3672e38974..66b718678e 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) |