merge: don't run post-hook logic on --no-verify
Fix a minor bug introduced inbc40ce4de6
(merge: --no-verify to bypass pre-merge-commit hook, 2019-08-07), when that change made the --no-verify option bypass the "pre-merge-commit" hook it didn't update the corresponding find_hook() (later hook_exists()) condition. As can be seen in the preceding commit in6098817fd7
(git-merge: honor pre-merge-commit hook, 2019-08-07) the two should go hand in hand. There's no point in invoking discard_cache() here if the hook couldn't have possibly updated the index. It's buggy that we use "hook_exist()" here, and as discussed in the subsequent commit it's subject to obscure race conditions that we're about to fix, but for now this change is a strict improvement that retains any caveats to do with the use of "hooks_exist()" as-is. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
c2162907e9
commit
9f6e63b966
@ -845,15 +845,18 @@ static void prepare_to_commit(struct commit_list *remoteheads)
|
|||||||
struct strbuf msg = STRBUF_INIT;
|
struct strbuf msg = STRBUF_INIT;
|
||||||
const char *index_file = get_index_file();
|
const char *index_file = get_index_file();
|
||||||
|
|
||||||
if (!no_verify && run_commit_hook(0 < option_edit, index_file, "pre-merge-commit", NULL))
|
if (!no_verify) {
|
||||||
abort_commit(remoteheads, NULL);
|
if (run_commit_hook(0 < option_edit, index_file,
|
||||||
/*
|
"pre-merge-commit", NULL))
|
||||||
* Re-read the index as pre-merge-commit hook could have updated it,
|
abort_commit(remoteheads, NULL);
|
||||||
* and write it out as a tree. We must do this before we invoke
|
/*
|
||||||
* the editor and after we invoke run_status above.
|
* Re-read the index as pre-merge-commit hook could have updated it,
|
||||||
*/
|
* and write it out as a tree. We must do this before we invoke
|
||||||
if (hook_exists("pre-merge-commit"))
|
* the editor and after we invoke run_status above.
|
||||||
discard_cache();
|
*/
|
||||||
|
if (hook_exists("pre-merge-commit"))
|
||||||
|
discard_cache();
|
||||||
|
}
|
||||||
read_cache_from(index_file);
|
read_cache_from(index_file);
|
||||||
strbuf_addbuf(&msg, &merge_msg);
|
strbuf_addbuf(&msg, &merge_msg);
|
||||||
if (squash)
|
if (squash)
|
||||||
|
Loading…
Reference in New Issue
Block a user