2012-02-10 25 views
19

¿Cómo puedo hacer una lista de las ramas de git que muestran y clasifican según las fechas de sus últimos commits?Git: Listar git branches, ordenar por (y mostrar) fecha

que he encontrado 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 

yo esperaría git normal tener esta característica. ¿Lo hace?

También encontré git show-branch --date-order pero la salida es algo diferente.

+0

¿Cómo puede ser un duplicado si es anterior? –

+0

¿Cómo puede ser esto más antiguo, cuando esto se solicitó en 2012 y el otro en 2011? –

+0

Está bien, mi mal. Estaba viendo la edición de 2014. Thx y la aplicación –

Respuesta

42

Ésta parece ser una manera integrada para lograr que (v1.7.4):

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

'git for-each-ref' se agregó en 1.4.4. – jthill

+0

no tiene un análogo para las sucursales remotas que puedo encontrar aunque –

+3

@ Ry4an use 'refs/remotos /' en lugar de 'refs/heads /' – SQB

-2

No, no tiene esa función incorporada.

3

He disfrutado de la solución @Will Sheppard poner algunos colores.

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