Thread (1 message) 1 message, 1 author, 2020-10-13

Re: [PATCH v2 2/2] sequencer: pass explicit --no-gpg-sign to merge

From: Junio C Hamano <hidden>
Date: 2020-10-13 04:46:59

Samuel Čavoj [off-list ref] writes:
quoted hunk
The merge subcommand launched for merges with non-default strategy would
use its own default behaviour to decide how to sign commits, regardless
of what opts->gpg_sign was set to. For example the --no-gpg-sign flag
given to rebase explicitly would get ignored, if commit.gpgsign was set
to true.

Signed-off-by: Samuel Čavoj <redacted>
---
 sequencer.c | 2 ++
 1 file changed, 2 insertions(+)
diff --git a/sequencer.c b/sequencer.c
index 88ccff4838..043d606829 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -3678,6 +3678,8 @@ static int do_merge(struct repository *r,
 		strvec_push(&cmd.args, git_path_merge_msg(r));
 		if (opts->gpg_sign)
 			strvec_pushf(&cmd.args, "-S%s", opts->gpg_sign);
+		else
+			strvec_push(&cmd.args, "--no-gpg-sign");
 
 		/* Add the tips to be merged */
 		for (j = to_merge; j; j = j->next)
A test that passes --no-gpg-sign from the command line (because
commit.gpgsign is set in the repository used in these tests) would
be a good thing to have, next to the test you added in [PATCH 1/2].
You'd want to make sure the command line overrides the configured
default by checking that the resulting history are not signed.

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help