Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Git log pretty format, newline after placeholder if non-empty

I've got a git alias for a log using the pretty format:

lg = log -10 --graph --abbrev-commit --pretty=format:'%C(auto)%d%Creset%n %C(bold yellow)%h%Creset - %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'

Which gives the following:

enter image description here

I can't seem to find a way to make a new line after the reference names only if the placeholder is non-empty.

The pretty formats wiki page has operators to add or remove (+ or -) the newline coming before the placeholder but not after.

like image 548
Reece Bennett Avatar asked Jan 16 '16 17:01

Reece Bennett


1 Answers

This is not supported natively by Git: you would have to process/parse the output to get the right result)

But this could also be the opportunity for a simple patch, much like the one which originally introduced the Pretty-format: %[+-]x mechanism: commit 9fa708d, git 1.6.6-rc1, Oct. 2009.

Maybe %[*/]x, for adding line-feed after the expansion of %x.

like image 152
VonC Avatar answered Sep 21 '22 12:09

VonC