Michael J Gruber wrote: > The attached patch teaches format-patch not to ignore merges (on > "--first-parent"), but I failed to track how "diff-tree" sets options > based on "-m" With hindsight, here's a search result: $ git grep -e argv -- builtin/diff-tree.c int cmd_diff_tree(int argc, const char **argv, const char *prefix) argc = setup_revisions(argc, argv, opt, &s_r_opt); const char *arg = *++argv; So it's setup_revisions, in revision.c, which clears revs->ignore_merges when -m is detected. Maybe it should clear revs->no_merges while at it? I can't see any other meaningful meaning for git alias.lg "log --no-merges" git lg -m HEAD~2..HEAD or git format-patch -m --first-parent HEAD~2..HEAD Meanwhile I would also be happy to see --first-parent imply -m, though that might be more controversial since -p -c --first-parent and -p --cc --first-parent are also meaningful. -- 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