Dienstag, 19. Februar 2013

Was ist auf diesem Branch?

Manchmal sitzt man so vor einem Terminal, hat fröhlich-chaotisch vor sich hin gehackt, natürlich alles brav auf einem eigenen chaotisch-vor-sich-hin-hack-Branch, und fühlt, dass die Zeit reif ist, die Früchte seiner Arbeit in den master-Branch zurückfließen zu lassen. Nur: Was sind denn die Früchte besagter Arbeit?

Im grafischen Display von Gitk ist das schnell erkannt: Gitk öffnen, die Commits ansehen, die man auf dem Branch eingebracht hat, und schon kann man entscheiden, ob man wirklich auf den master mergen will oder nicht. Nur was ist, wenn's auf dem Terminal keine grafische Darstellung gibt?

Kein Problem. Gitk ist ja im Grunde nur ein glorifiziertes git log (wenn auch recht gut glorifiziert), also kann man alles, was man mit gitk machen kann, auf mit git log machen, ganz ohne grafische Ausgabe.

In diesem Falle interessieren uns alle Commits auf dem Branch hacking, der von master abgezweigt. Das bedeutet, dass alle Commits, die auf hacking liegen, angezeigt werden sollen, aber keine Commit, die auf master liegen. Und so geht's:

  git log hacking ^master

Eigentlich ganz einfach. Natürlich gibt's noch jede Menge Optionen für git log, mit dem man anpassen kann, was genau wie ausgegeben wird. Beliebt sind in diesem Zusammenhang --oneline und --graph. Aber wenn man wirklich will geht da noch viel mehr...

Keine Kommentare: