Veit Schiele Communications

Veit Schiele Communications

Introspektion und Vergleich

Git hat einige Tools, mit denen Sie den Überblick auch über große Repositories mit mehreren Branches behalten können. Sie erlauben Ihnen herauszufinden, welche Aufgaben bereits erledigt sind, was der Unterschied zwischen zwei Zweige ist und vieles mehr.
erstellt von Veit Schielezuletzt verändert: 06.07.2014 11:25 © Veit Schiele, 2011–2014

Kurz gesagt kann git log verwendet werden, um bestimmte Commits in einem Projekt zu finden – je nach Autor, Datum, Inhalt oder Geschichte. Und git diff können Sie verwenden, um zwei verschiedene Punkte in der Geschichte zu vergleichen.

git log

git log BRANCH-ABRANCH-B
vergleicht zwei verschiedene Branches eines Projekts
git log --author=NAME

zeigt die Commits eines bestimmten Autors an

git log --author=NAME--oneline-X
zeigt die letzten X Commits des Autors an.
git log --since={DATE-1}--before{DATE-2}

Dabei kann DATE-1 z.B. Werte annehmen wie 2.weeks.ago oder 2011-07-06.

Weiter gebräuchliche Optionen sind:

  • --oneline
  • --no-merges
git log --grep=REGEX

filtert Commits nach dem Inhalt der Nachrichten

--format
erlaubt zusätzlich die Formatierung der Ausgabe, also z.B. git log --grep="bootstrap"--format="%h %an %s".
--all-match
Während die Optionen üblicherweise mit ÒDER` verknüpft werden, kann mit dieser zusätzlichen Option eine ÙND`-Verknüpfung erzielt werden.
git log -S'FOO'
sucht in den Diffs nach FOO.

git diff

Um sich die tatsächlichen Veränderungen zweier Snaphots anzuzeigen kann diff verwendet werden. Dabei können sowohl Branches wie auch Releases verglichen werden.

git diff
zeigt, wie sich ein Projekt in der Vergangenheit verändert hat.
git diff BRANCH-ABRANCH-B
zeigt die Veränderungen von BRANCH-B im Vergleich zu BRANCH-A.