So verwenden Sie Git-Aliase: 10 wesentliche Beispiele
Git ist ein beliebtes, leistungsstarkes Tool und möglicherweise das erfolgreichste Versionskontrollsystem, das es je gegeben hat. Die Macht von Git ist aus seinem Befehlssatz ersichtlich. Es besteht derzeit aus etwa 150 Befehlen, vom üblichen git-status bis zum obskuren git-get-tar-commit-id . Da jeder Befehl seine eigenen Optionen unterstützt, gibt es eine erstaunliche Menge, an die Sie sich erinnern müssen.
Glücklicherweise hat Git eine Möglichkeit, die Dinge zu vereinfachen. Ein Git-Alias kann als Verknüpfung für jeden Unterbefehl mit beliebigen Optionen dienen. Mit externen Befehlen können Sie noch leistungsfähigere Aufrufe verwenden. Hier sind 10 der nützlichsten Aliase, die Sie einrichten können.
So legen Sie einen Alias fest
Das Festlegen eines Alias ist so einfach wie diesem Muster zu folgen:
git config --global alias.co 'checkout'
Die Option –global legt den Alias für die gesamte Git-Nutzung durch den aktuellen Benutzer fest. Damit ein Alias für alle Benutzer des Systems gilt, verwenden Sie stattdessen –system . Um einen für das aktuelle Repository spezifischen Alias hinzuzufügen, verwenden Sie –local .
Wenn Sie wissen, wo sich eine Konfigurationsdatei befindet, können Sie sie direkt bearbeiten. Die Systemkonfiguration befindet sich an einem globalen Speicherort, normalerweise /usr/local/etc/gitconfig . Ihre benutzerspezifische Konfiguration befindet sich in einer Datei in Ihrem Home-Verzeichnis wie ~/.gitconfig . Die lokale Konfiguration existiert in jedem Repository selbst, in der .git/config- Datei.
1. Ein Alias zum schnellen Wechseln der Filialen
Abhängig von Ihrem Workflow können Sie während jeder Arbeitssitzung mehrmals zwischen den Zweigen wechseln. Um den Aufwand zu verringern und mit der einfachsten Art von Alias zu üben, versuchen Sie Folgendes:
alias.co 'checkout'
Wenn Sie git co feature1 eingeben, wird nun zum Feature1- Zweig gewechselt . Der Alias verkürzt den Namen des Unterbefehls, der weiterhin mit zusätzlichen Argumenten arbeitet.
2. Verdichteten Status anzeigen
Standardmäßig erzeugt der Befehl git status eine ausführliche Ausgabe. Es erklärt den Zustand im Detail, mit nützlichen Informationen für jeden, der mit Git nicht vertraut ist. Wenn Sie jedoch Platz sparen möchten und bereits mit der Git-Terminologie vertraut sind, möchten Sie möglicherweise einen Alias für eine kürzere Version einrichten:
alias.st status -sb
Dies ist nur eine sehr kleine Variation von git-status , aber die Option -s erzeugt eine kurze Ausgabe, die die Dinge viel kürzer macht. Es dauert ungefähr diesen Standard-Git-Status:

Und produziere stattdessen dies:

Die Option -b zeigt Verzweigungs- und Tracking-Informationen an, die -s sonst unterdrücken würde.
3. Zusammenfassungsprotokollierung anzeigen
Git bietet viele Möglichkeiten, den Verlauf eines Projekts über den Befehl git-log zu überprüfen . Es kann die gemeldeten Commits filtern und viele verschiedene Daten anzeigen, die mit jedem Commit verbunden sind. Manchmal möchten Sie jedoch ein möglichst kompaktes Protokoll. Die Option –oneline bietet dies, aber es ist viel schneller, sie zu aliasen , da Sie sie möglicherweise ziemlich oft verwenden:
alias.ll 'log --oneline'
Die Ausgabe präsentiert einen Commit pro Zeile mit dem Titel der Commit-Nachricht und einem abgekürzten Hash. Es sieht aus wie das:

4. Rückgängigmachen der letzten Änderung
Der Befehl git reset ist wertvoll, aber nicht der einfachste zu verstehen. Manchmal möchten Sie nur ein einfaches Rückgängigmachen, das den letzten Commit zurücksetzt. Die Option –soft stellt sicher, dass Git nur den letzten Commit entfernt, ohne etwas an den lokalen Dateien in Ihrem Arbeitsbaum zu ändern. HEAD~1 ist einfach eine Möglichkeit, auf den Commit vor dem HEAD zu verweisen.
alias.undo 'reset --soft HEAD~1'
5. Protokoll des letzten Commits
Wenn Sie ein Projekt vom Vortag übernehmen, kann es hilfreich sein, den letzten Commit zu überprüfen. Mit einem git-log- Alias erhalten Sie einen schnellen, detaillierten Bericht des letzten Commits:
alias.last 'log -1 HEAD --stat'
Die Option -1 HEAD fordert einfach den allerletzten Commit an und –stat listet die Dateien auf, die von dem Commit betroffen waren, mit der Anzahl der eingefügten und gelöschten Zeilen.

6. Ein einfacher One-Shot-Commit
Sie werden wahrscheinlich ziemlich oft feststellen, dass Sie im nächsten Schritt Dateien hinzufügen und festschreiben. Sofern Ihr Workflow nicht komplizierter ist, möchten Sie diesen Vorgang möglicherweise mit einem Alias vereinfachen:
alias.ac '!git add -A && git commit'
Die einzelnen Komponenten erfordern nicht viel Erklärung, abgesehen davon, dass die an git-add übergebene Option -A automatisch den Index aktualisiert, sodass alle Dateien mit der Arbeitskopie übereinstimmen. Es sorgt für das Löschen, Ändern und Erstellen von Dateien.
Interessant an diesem Alias ist, dass er zwei Befehle kombiniert. Dies geschieht mit der ! Symbol als erstes Zeichen des Alias. Dies informiert Git darüber, dass es sich bei dem, was folgt, um einen externen Shell-Befehl und nicht um einen Unterbefehl handelt.
7. Ausgefallene Zweigformatierung
git-branch, ein weiterer Befehl mit viel Flexibilität, kann seine Ausgabe auf viele Arten über den spärlichen Standard hinaus formatieren.
alias.br "branch --format='%(HEAD) %(color:yellow)%(refname:short)%(color:reset) - %(contents:subject) %(color:green)(%(committerdate:relative)) [%(authorname)]' --sort=-committerdate"
Untersuchen Sie das Format von Anfang bis Ende. Beachten Sie, dass es viele spezielle Felder enthält. %(HEAD) fügt neben dem aktuellen Zweig ein Sternchen hinzu.

Aliase sind eine großartige Möglichkeit, mit der Formatierung von Befehlen wie git-branch zu experimentieren. Sie werden im Laufe der Zeit Präferenzen entwickeln, daher ist es ein Muss, den Überblick zu behalten, welche Optionen Ihre bevorzugte Ausgabe erzeugen.
8. Zusammenfassung der Änderungen nach Mitwirkenden
Als Variante von git log gruppiert git-shortlog die angezeigten Commits nach Autor. Dies ist ideal für Versionshinweise oder um einfach im Auge zu behalten, wer was in letzter Zeit gemacht hat.
Einige Optionen sorgen für eine sehr bequeme Allzweck-Autorenzusammenfassung, die sich perfekt für die regelmäßige Verwendung über einen Alias eignet. Die Option -e zeigt neben Namen auch E-Mail-Adressen an. Die Option –summary gibt nur eine Gesamtzahl und nicht den Betreff jedes Commits aus. Und –numbered ordnet die endgültige Ausgabe nach der Gesamtzahl der Beiträge. Sie können diesen Alias verwenden:
alias.contrib 'shortlog -e --summary --numbered'
Um die folgende Ausgabe zu erzeugen:

9. Listen Sie die Zweige auf, die nach der letzten Änderung sortiert sind
Jetzt noch etwas mit Verzweigungen arbeiten, diesmal mit einem Unterbefehl auf niedrigerer Ebene. Dieser komplizierte Alias ist ein weiteres Beispiel für einen externen Befehl – in diesem Fall eine Pipeline. Zuerst durchläuft der Befehl git-for-each-ref alle bekannten Verzweigungen. Dies geschieht in der Reihenfolge des Autors und formatiert die Ausgabe, um dieses Datum neben dem Commit-Hash anzuzeigen . Schließlich verwendet es sed , um refs/heads/ aus dem Namen jedes Zweigs zu entfernen .
alias.b '!git for-each-ref --sort="-authordate" --format="%(authordate)%09%(objectname:short)%09%(refname)" refs/heads | sed -e "s-refs/heads/--"'

10. Ein Alias zum Anzeigen aller Aliase
Bei all dieser Unterstützung für Aliase ist es überraschend, dass Git keine einfache Möglichkeit bietet, alle von Ihnen eingerichteten Aliase anzuzeigen. Aber keine Sorge, Sie können das mit einem Alias beheben! Der Befehl git config listet alle aktuellen Konfigurationen auf. Sie können Werte mit der Option –get-regexp filtern , sodass Sie mit dem folgenden Alias einen nützlichen git alias- Befehl erhalten:
alias.alias 'git config --get-regexp ^alias.'

Sparen Sie Zeit und Frust mit Git-Aliasnamen
Git-Aliasse sparen Ihnen Zeit, da Sie keine langen und komplizierten Befehle eingeben müssen. Git hat eine große Anzahl von Unterbefehlen, aber Aliase sind leicht wiederzuverwenden und zu warten. Sie können über die lokale Konfiguration sogar Aliase in Ihr Projekt bündeln, sodass Sie Verknüpfungen und Standardverfahren freigeben können.
Genau wie Linux-Aliasnamen können Sie mit Git-Aliasnamen weniger tippen und mehr tun. Experimentieren Sie mit den oben genannten Aliasnamen und erkunden Sie den vollständigen Git-Befehlssatz, um die Fülle der verfügbaren Funktionen zu sehen.