I spent a few more minutes cleaning up the rough edges here, and this is what I ended up with. This version uses run_diff to implement the actual single-parent diff, so that it matches a "real" diff exactly. It also introduces a few new patches to let you really specify an empty --pretty user-format. I do think this is an improvement over the current state. I'd also be OK with just specifying "--first-parent" to "git stash list" by default, so that "git stash list -p" does something sensible. I don't like that it doesn't let you peek at the index, but nobody has complained about that in "git stash show", so perhaps nobody cares. All things being equal, I prefer this solution, though. [1/6]: revision: drop useless string offset when parsing "--pretty" [2/6]: pretty: treat "--format=" as an empty userformat [3/6]: pretty: make empty userformats truly empty [4/6]: add --simplify-combined-diff option [5/6]: stash: default listing to "--cc --simplify-combined-diff" [6/6]: stash: show combined diff with "stash show" -Peff -- 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