Git
Chapters ▾ 2nd Edition

2.7 Git Grundlagen - Git Aliases

Git Aliases

Bevor wir dieses Kapitel über Basic Git abschließen, gibt es noch einen kurzen Tipp, der Ihre Arbeit mit Git einfacher, leichter und verständlicher machen kann: Aliase. Wir werden nicht auf sie Bezug nehmen oder annehmen, dass Sie sie später im Buch verwenden, aber Sie sollten wohl wissen, wie man sie benutzt.

Git leitet Ihr Kommando nicht automatisch ab, wenn Sie es teilweise eingeben. Wenn Sie nicht den gesamten Text von jedem der Git-Befehle eingeben möchten, können Sie mit Hilfe von git config einfach einen Alias für jeden Befehl einrichten. Hier sind ein paar Beispiele, die Sie einrichten sollten:

$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status

Das bedeutet, dass Sie z.B. anstelle von git commit einfach git ci eingeben müssen. Wenn Sie Git nun weiter verwenden, werden Sie vermutlich auch andere Befehle häufig verwenden; scheuen Sie sich nicht, neue Aliase zu erstellen.

Diese Technik kann auch sehr nützlich sein, um Befehle zu erstellen, von denen Sie glauben, dass sie vorhanden sein sollten. Um beispielsweise ein Usability-Problem zu beheben, auf das Sie beim Entfernen einer Datei aus der Staging Area stoßen, können Sie Git Ihren eigenen Unstage-Alias hinzufügen:

$ git config --global alias.unstage 'reset HEAD --'

Dadurch sind die folgenden beiden Befehle gleichwertig:

$ git unstage fileA
$ git reset HEAD -- fileA

Das erscheint etwas klarer. Es ist auch üblich, einen last (dt. letzten) Befehl hinzuzufügen, so wie hier:

$ git config --global alias.last 'log -1 HEAD'

Auf diese Weise können Sie den letzten Commit leicht auffinden:

$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date:   Tue Aug 26 19:48:51 2008 +0800

    test for current head

    Signed-off-by: Scott Chacon <schacon@example.com>

Wie Sie feststellen können, ersetzt Git einfach den neuen Befehl durch den Alias, für den Sie ihn verwenden. Vielleicht möchten Sie jedoch eher einen externen Befehl als einen Git-Subbefehl ausführen. In diesem Fall starten Sie den Befehl mit einem ! Zeichen. Das ist hilfreich, wenn Sie Ihre eigenen Tools schreiben, die mit einem Git-Repository arbeiten. Wir können durch Aliasing von git visual demonstrieren, um gitk auszuführen:

$ git config --global alias.visual '!gitk'