Git: List git branches, sort by (and show) date

Ondra Žižka picture Ondra Žižka · Feb 11, 2012 · Viewed 24.5k times · Source

How can I list git branches showing and sorting by their last commits' dates?

I've found this:

for k in `git branch | sed s/^..//`; do
    echo -e `git log -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" "$k"`\\t"$k";
done | sort -r

I'd expect plain git to have this feature. Does it?

I also found git show-branch --date-order but the output is something different.

Answer

Will Sheppard picture Will Sheppard · Jun 6, 2013

This appears to be a built-in way to achieve that (v1.7.4):

git for-each-ref --sort=committerdate refs/heads/ --format='%(committerdate:short) %(refname:short)'