¿Cómo iniciar sesión en orden inverso?

180

Hace poco aprendí que puedo obtener hg log para imprimir el historial en orden inverso con:

hg log -r :

Entonces, por supuesto, intenté:

git log -r :

Bueno, no funcionó. Entonces, ¿cuál es el comando para hacer lo mismo en git?

Erik B
fuente
1
man git-loggrep marcha atrás.
scravy
2
man git-log /reversey presione enter.
sjas
1
Para mayor claridad, de acuerdo con los documentos -r en GIT se traduce a: "Mostrar diferencias recursivas".
GuyPaddock el

Respuestas:

334

Usa la --reverseopción:

git log --reverse
Makis
fuente
49
Tenga en cuenta que, por ejemplo git log -10 --reverse, obtendría 10 últimas confirmaciones y luego la lista inversa.
Jakub Narębski
Puede crear un alias git: stackoverflow.com/questions/2553786/…
Makis
2
Esto también funciona (actualmente) git show, aunque la documentación no lo menciona. Por ejemplogit show origin/master.. --reverse
Ryan Lundy
2
Yo uso git golparagit log --reverse
Felipe Alvarez
14

No necesita escribir --reversetodo el tiempo, ni necesita una función bash. Puedes crear un alias git. Abre tu editor de texto favorito y abre tu .gitconfigarchivo global . Generalmente se encuentra en su directorio de inicio.

Navega o crea una sección como esta:

[alias]
    lg = log -10 --reverse

Eso crea un alias git que toma las diez confirmaciones más recientes y luego revierte esa lista, de modo que la más reciente de esas 10 está en la parte inferior. Ahora puedes simplemente ejecutar:

git lg

Chev
fuente
8

El comentario de Jakub Narębski ("Tenga en cuenta que, por ejemplo git log -10 --reverse, obtendría 10 últimas confirmaciones y luego la lista inversa") se ha aclarado en Git 2.11 (cuarto trimestre de 2016):

Ver commit 04be694 (27 de septiembre de 2016) por Pranit Bauva ( pranitbauva1997) .
(Fusionada por Junio ​​C Hamano - gitster- en commit 54a9f14 , 11 oct 2016)

rev-list-options: aclarar el uso de --reverse

Los usuarios a menudo se preguntan si nse muestran las confirmaciones más antiguas o más recientes log -n --reverse.
Aclare que --reversesolo se activa después de decidir qué confirmaciones se mostrarán para desconcertarlas.

Ver Commit Limiting .

VonC
fuente
0

Podría crear una función bashrc (suponiendo que esté en un sistema operativo unixy)

function git_logr {

    git log --reverse

}
Adil Khan
fuente
55
Un enfoque más fácil sería agregar un alias para algo así de simple: git config --global alias.logr 'log --reverse'invocar usando: git logr <argumentos adicionales>
mhand
0

Combiné algunos de los sugeridos uno en uno y creé un alias.

git log -10 --pretty=oneline --abbrev-commit --reverse
alias gl='git log -10 --pretty=oneline --abbrev-commit --reverse'
wojcieh
fuente