Alex Riesen <alexander.riesen@xxxxxxxxxxx> writes: > Subject: Re: [PATCH 2/2] Fix "commit-msg" hook unexpectedly called for "git pull --no-verify" Perhaps Subject: [PATCH] pull: honor --no-verify and do not call the commit-msg hook instead. > From: Alex Riesen <raa.lkml@xxxxxxxxx> > > The option was incorrectly auto-translated to "--no-verify-signatures", > which causes the unexpected effect of the hook being called. > And an even more unexpected effect of disabling verification of signatures. > > The manual page describes the option to behave same as the similarly > named option of "git merge", which seems to be the original intention > of this option in the "pull" command. > > Signed-off-by: Alexander Riesen <raa.lkml@xxxxxxxxx> > --- > builtin/pull.c | 6 ++++++ > t/t5521-pull-options.sh | 24 ++++++++++++++++++++++++ > 2 files changed, 30 insertions(+) > > diff --git a/builtin/pull.c b/builtin/pull.c > index 425950f469..e783da10b2 100644 > --- a/builtin/pull.c > +++ b/builtin/pull.c > @@ -84,6 +84,7 @@ static char *opt_edit; > static char *cleanup_arg; > static char *opt_ff; > static char *opt_verify_signatures; > +static char *opt_verify; > static int opt_autostash = -1; > static int config_autostash; > static int check_trust_level = 1; > @@ -160,6 +161,9 @@ static struct option pull_options[] = { > OPT_PASSTHRU(0, "ff-only", &opt_ff, NULL, > N_("abort if fast-forward is not possible"), > PARSE_OPT_NOARG | PARSE_OPT_NONEG), > + OPT_PASSTHRU(0, "verify", &opt_verify, NULL, > + N_("control use of pre-merge-commit and commit-msg hooks"), > + PARSE_OPT_NOARG), > OPT_PASSTHRU(0, "verify-signatures", &opt_verify_signatures, NULL, > N_("verify that the named commit has a valid GPG signature"), > PARSE_OPT_NOARG), > @@ -688,6 +692,8 @@ static int run_merge(void) > strvec_pushf(&args, "--cleanup=%s", cleanup_arg); > if (opt_ff) > strvec_push(&args, opt_ff); > + if (opt_verify) > + strvec_push(&args, opt_verify); > if (opt_verify_signatures) > strvec_push(&args, opt_verify_signatures); Looks quite straight-forward, especially that now this just mimicks how --[no-]verify-signatures is passed through. Thanks, will queue.