From 17d65f03e1d2d1678d9960a4f71e4caccacf500f Mon Sep 17 00:00:00 2001 From: Michael J Gruber Date: Fri, 6 Mar 2015 14:55:32 +0100 Subject: sequencer: preserve commit messages sequencer calls "commit" with default options, which implies "--cleanup=default" unless the user specified something else in their config. This leads to cherry-picked commits getting a cleaned up commit message, which is usually not an intended side-effect. Make the sequencer use "--cleanup=verbatim" so that it preserves commit messages independent of the default, unless the user has set config for "commit" or the message is amended with -s or -x. Reported-by: Christoph Anton Mitterer Signed-off-by: Michael J Gruber Signed-off-by: Junio C Hamano --- sequencer.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'sequencer.c') diff --git a/sequencer.c b/sequencer.c index bbaddcb05a..8b735cdd04 100644 --- a/sequencer.c +++ b/sequencer.c @@ -358,6 +358,7 @@ static int run_git_commit(const char *defmsg, struct replay_opts *opts, struct argv_array array; int rc; char *gpg_sign; + const char *value; argv_array_init(&array); argv_array_push(&array, "commit"); @@ -374,6 +375,10 @@ static int run_git_commit(const char *defmsg, struct replay_opts *opts, if (!opts->edit) { argv_array_push(&array, "-F"); argv_array_push(&array, defmsg); + if (!opts->signoff && + !opts->record_origin && + git_config_get_value("commit.cleanup", &value)) + argv_array_push(&array, "--cleanup=verbatim"); } if (allow_empty) -- cgit v1.2.3