Ok, I slightly modified this answer to create a more convenient format. Here is the result in ZSH

And here is the script
#!/bin/sh FILES="$(git ls-tree --name-only HEAD .)" MAXLEN=0 IFS="$(printf "\n\b")" for f in $FILES; do if [ ${#f} -gt $MAXLEN ]; then MAXLEN=${#f} fi done for f in $FILES; do str="$(git log -1 --pretty=format:"%C(green)%cr%Creset %x09 %C(cyan)%h%Creset %s %C(yellow)(%cn)%Creset" $f)" printf "%-${MAXLEN}s -- %s\n" "$f" "$str" done
Here is the source of gist
Gabriele petronella
source share