Was macht git log - all das?

8

Warum protokolliert git log nicht einfach all die letzten Commits?

Und was bedeutet das?

%Vor%

Ich gehe davon aus, dass es, sobald es ins Englische übersetzt wurde, bedeutet, dass es die letzten Commits zeigt.

Kann jemand klären?

    
Snowcrash 20.04.2015, 19:25
quelle

3 Antworten

5

Nein, das heißt nicht, dass es die letzten Commits zeigt. Es zeigt alle Commits in der Geschichte von Zweigen, Tags und anderen Referenzen, aber es zeigt keine Commits an, die nicht von Ref erreichbar sind. Ein typisches Beispiel für ein Commit, das von keiner Ref erreichbar ist, ist, wenn Sie git commit --amend gerade ausgeführt haben: Die vorherige Commit existiert zwar immer noch lokal, aber sie ist nicht mehr erreichbar und wird nicht in git log --all angezeigt. Aber git reflog wird bestätigen, dass es tatsächlich noch existiert.

Warum --all nicht der Standard ist: Normalerweise werden Sie das nicht wollen. Wenn Sie zum Beispiel auf einem Zweig-Master arbeiten und git log ausführen, sind Sie normalerweise nicht am Verlauf von Feature-Zweigen interessiert. Normalerweise möchten Sie den Verlauf des Masters sehen.

Wenn Sie normalerweise das Verhalten --all möchten, empfehle ich, einen Alias ​​zu erstellen.

    
hvd 20.04.2015 19:32
quelle
1

Laut einem Beitrag hier git --all missing commit :

  

log --all dient nur zum Auflisten von Commits, auf die in refs / verwiesen wird (wie Tags, Köpfe, ...)

Die gleiche Seite sagt auch:

  

Die Option --all weist git log nicht an, alle Commits anzuzeigen. Es fragt nach den Logs aller Refs, im Grunde Ihre Zweige und Tags.

    
Bryan Green 20.04.2015 19:33
quelle
0

Weil ich die Geschichte aller Branchen sehen möchte / etc. ist nicht so üblich, wenn man so arbeitet, als wolle man die Geschichte von etwas Spezifischem sehen, typischerweise den aktuellen Zweig.

  

Ich gehe davon aus, dass es, sobald es ins Englische übersetzt wurde, zeigt, dass es die letzten Commits zeigt.

Nein. refs / enthält Dinge wie Zweige und Tags. Wenn Sie den Verlauf eines bestimmten Zweigs oder eines bestimmten Zweigs von Zweigen anzeigen möchten, listen Sie diese in Ihrem git log -Befehl auf. Wenn Sie die Historie aller Zweige / Tags / etc. Sehen möchten, können Sie die Verknüpfung --all verwenden.

Git log zeigt nicht nur die letzten Commits an: es zeigt alle Commits an, die den gegebenen Kriterien entsprechen, von denen es mehrere Dimensionen gibt. Zum Beispiel, in welche Zweige der Commit eingeschaltet ist, ist das Commit in einem bestimmten Bereich, usw.

    
bames53 20.04.2015 19:34
quelle

Tags und Links