Junio C Hamano <gitster@xxxxxxxxx> writes: > Jonathan Nieder <jrnieder@xxxxxxxxx> writes: > >> I'm starting to suspect it might be simpler to add a new "[merge] no-ff" >> configuration item, like the existing "[merge] log". > > Surely > > [merge] > log = false > ff = false > > would be a lot simpler and probably far easier to explain. Yes, it is far simpler and easier to explain. I'll leave the tests and the commit log message to people who are more interested in this topic than I am ;-) Documentation/merge-config.txt | 6 ++++++ builtin/merge.c | 3 +++ 2 files changed, 9 insertions(+), 0 deletions(-) diff --git a/Documentation/merge-config.txt b/Documentation/merge-config.txt index 8920258..2aa4408 100644 --- a/Documentation/merge-config.txt +++ b/Documentation/merge-config.txt @@ -16,6 +16,12 @@ merge.defaultToUpstream:: to their corresponding remote tracking branches, and the tips of these tracking branches are merged. +merge.ff:: + Do not generate a merge commit if the merge resolved as a + fast-forward; only update the branch pointer instead. Setting + this to `false` would be equivalent to giving `--no-ff` from + the command line. + merge.log:: In addition to branch names, populate the log message with at most the specified number of one-line descriptions from the diff --git a/builtin/merge.c b/builtin/merge.c index d171c63..5194f04 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -541,6 +541,9 @@ static int git_merge_config(const char *k, const char *v, void *cb) if (is_bool && shortlog_len) shortlog_len = DEFAULT_MERGE_LOG_LEN; return 0; + } else if (!strcmp(k, "merge.ff")) { + allow_fast_forward = git_config_bool(k, v); + return 0; } else if (!strcmp(k, "merge.defaulttoupstream")) { default_to_upstream = git_config_bool(k, v); return 0; -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html