Jak zalogować się git w odwrotnej kolejności?

180

Niedawno dowiedziałem się, że mogę uzyskać dziennik hg, aby wydrukować historię w odwrotnej kolejności za pomocą:

hg log -r :

Więc oczywiście próbowałem:

git log -r :

Cóż, to nie zadziałało. Więc jakie jest polecenie zrobienia tego samego w git?

Erik B.
źródło
1
man git-loggrep reverse.
Scravy
2
man git-log /reversei naciśnij enter.
sjas
1
Dla jasności, zgodnie z dokumentacją -r w GIT oznacza: „Pokaż rekursywne różnice”.
GuyPaddock

Odpowiedzi:

334

Skorzystaj z --reverseopcji:

git log --reverse
Makis
źródło
49
Zauważ, że np. git log -10 --reverseDostanie 10 ostatnich zatwierdzeń, a następnie odwrócisz listę.
Jakub Narębski
Możesz utworzyć alias git: stackoverflow.com/questions/2553786/…
Makis
2
Działa to również (obecnie) git show, chociaż dokumentacja o tym nie wspomina. Np.git show origin/master.. --reverse
Ryan Lundy
2
Używam git goldlagit log --reverse
Felipe Alvarez
14

Nie musisz pisać przez --reversecały czas, ani nie potrzebujesz funkcji bash. Możesz po prostu utworzyć alias git. Otwórz swój ulubiony edytor tekstu i otwórz .gitconfigplik globalny . Zwykle znajduje się w twoim katalogu domowym.

Przejdź do lub utwórz sekcję taką jak ta:

[alias]
    lg = log -10 --reverse

Tworzy to alias git, który pobiera dziesięć ostatnich zatwierdzeń, a następnie odwraca tę listę, tak aby najnowszy z tych 10 znajdował się na dole. Teraz możesz po prostu uruchomić:

git lg

Chev
źródło
8

Jakub Narębski „s komentarz («Należy pamiętać, że na przykład git log -10 --reversedostanie 10 ostatnich zobowiązuje następnie odwrotna List») zostało wyjaśnione w Git 2.11 (Q4 2016):

Zobacz zatwierdzenie 04be694 (27 września 2016) autorstwa Pranit Bauva ( pranitbauva1997) .
(Scalone przez Junio ​​C Hamano - gitster- w zatwierdzeniu 54a9f14 , 11 października 2016 r.)

rev-list-options: wyjaśnij użycie --reverse

Użytkownicy często zastanawiają się, czy najstarsze czy najnowsze nzatwierdzenia są wyświetlane przez log -n --reverse.
Wyjaśnij, że --reverserozpoczyna się dopiero po podjęciu decyzji, które zatwierdzenia mają zostać pokazane, aby je rozjaśnić.

Zobacz Commit Limiting .

VonC
źródło
0

Możesz utworzyć funkcję bashrc (zakładając, że korzystasz z systemu operacyjnego unixy)

function git_logr {

    git log --reverse

}
Adil Khan
źródło
5
Łatwiejszym podejściem byłoby dodanie aliasu dla czegoś tak prostego: git config --global alias.logr 'log --reverse'Wywołaj używając: git logr <dodatkowe argumenty>
mhand
0

Połączyłem kilka sugerowanych w jeden i utworzyłem alias.

git log -10 --pretty=oneline --abbrev-commit --reverse
alias gl='git log -10 --pretty=oneline --abbrev-commit --reverse'
wojcieh
źródło