On Tue, Feb 21, 2017 at 01:47:37PM -0800, Junio C Hamano wrote: > > So the best I could come up with is: > > > > git config pretty.twoline '%C(auto)%h %s%C(auto)%+d' > > git log --format=twoline > > [...] > > Yeah, I had a similar thought to use something around "%n%-d", but > > $ git log --format='%h%n%-d%C(auto) %s %C(auto)' > > is not it. > > I guess we could pile on another hack to make the sign between % and > the format specifier cumulative and then "%n%-+d" may do what we > want, but we need a true %(if)...%(then)...%(else)...%(end) support > if we really want to do this thing properly. Yeah, I'd rather not pile up more hacks. The for-each-ref placeholders are more verbose, but I think the end result is a lot easier to read and maintain, and the terseness doesn't matter if you're sticking it behind an alias or config option. (Don't get me wrong; I think the %(if) ones are pretty ugly, too, but the next step beyond that is embedding some kind of templating or scripting language, and that just seems like overkill). -Peff