path: root/builtin/merge.c
diff options
authorJeff King <>2015-04-02 21:39:52 (GMT)
committerJunio C Hamano <>2015-04-02 22:12:39 (GMT)
commit2bf15a3330a26183adc8563dbeeacc11294b8a01 (patch)
tree20ecd4b3f462927950efd2191301325266e7a288 /builtin/merge.c
parent282616c72d1d08a77ca4fe1186cb708c38408d87 (diff)
merge: pass verbosity flag down to merge-recursive
This makes "git merge --quiet" really quiet when we call into merge-recursive. Note that we can't just pass our flag down as-is; the two parts of the code use different scales. We center at "0" as normal for git-merge (with "--quiet" giving a negative value), but merge-recursive uses "2" as its center. This patch passes a negative value to merge-recursive rather than "1", though, as otherwise the user would have to use "-qqq" to squelch all messages (but the downside is that the user cannot distinguish between levels 0-2 if without resorting to the GIT_MERGE_VERBOSITY variable). We may want to review and renormalize the message severities in merge-recursive, but that does not have to happen now. This is at least in improvement in the sense that we are respecting "--quiet" at all. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'builtin/merge.c')
1 files changed, 4 insertions, 0 deletions
diff --git a/builtin/merge.c b/builtin/merge.c
index 8763b2e..4b200b5 100644
--- a/builtin/merge.c
+++ b/builtin/merge.c
@@ -687,6 +687,10 @@ static int try_merge_strategy(const char *strategy, struct commit_list *common,
o.subtree_shift = "";
o.renormalize = option_renormalize;
+ if (verbosity < 0)
+ o.verbosity = verbosity;
+ else if (verbosity > 0)
+ o.verbosity += verbosity;
o.show_rename_progress =
show_progress == -1 ? isatty(2) : show_progress;