-
1. Erste Schritte
- 1.1 Über Versionskontrolle
- 1.2 Eine kurze Geschichte von Git
- 1.3 Was ist Git?
- 1.4 Die Kommandozeile
- 1.5 Git installieren
- 1.6 Erstmalige Git-Einrichtung
- 1.7 Hilfe bekommen
- 1.8 Zusammenfassung
-
2. Git Grundlagen
-
3. Git Branching
- 3.1 Branches im Überblick
- 3.2 Grundlegendes Branching und Merging
- 3.3 Branch-Management
- 3.4 Branching-Workflows
- 3.5 Remote-Branches
- 3.6 Rebasing
- 3.7 Zusammenfassung
-
4. Git auf dem Server
- 4.1 Die Protokolle
- 4.2 Git auf einem Server einrichten
- 4.3 Generieren Ihres SSH-Public-Keys
- 4.4 Einrichten des Servers
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Drittanbieter-Hosting-Optionen
- 4.10 Zusammenfassung
-
5. Verteiltes Git
-
6. GitHub
-
7. Git-Werkzeuge
- 7.1 Revisionsauswahl
- 7.2 Interaktives Staging
- 7.3 Stashing und Bereinigen
- 7.4 Ihre Arbeit signieren
- 7.5 Suchen
- 7.6 Historie umschreiben
- 7.7 Reset entmystifiziert
- 7.8 Fortgeschrittenes Merging
- 7.9 Rerere
- 7.10 Debugging mit Git
- 7.11 Submodule
- 7.12 Bundling
- 7.13 Ersetzen
- 7.14 Credential-Speicher
- 7.15 Zusammenfassung
-
8. Git anpassen
-
9. Git und andere Systeme
- 9.1 Git als Client
- 9.2 Migration zu Git
- 9.3 Zusammenfassung
-
10. Git-Interna
- 10.1 Plumbing und Porcelain
- 10.2 Git-Objekte
- 10.3 Git-Referenzen
- 10.4 Packfiles
- 10.5 Die Refspec
- 10.6 Übertragungsprotokolle
- 10.7 Wartung und Datenwiederherstellung
- 10.8 Umgebungsvariablen
- 10.9 Zusammenfassung
-
Anhang A: Git in anderen Umgebungen
- A1.1 Grafische Oberflächen
- A1.2 Git in Visual Studio
- A1.3 Git in Visual Studio Code
- A1.4 Git in IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Git in Sublime Text
- A1.6 Git in Bash
- A1.7 Git in Zsh
- A1.8 Git in PowerShell
- A1.9 Zusammenfassung
-
Anhang B: Git in Ihre Anwendungen einbetten
- A2.1 Kommandozeilen-Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
Anhang C: Git-Befehle
- A3.1 Einrichtung und Konfiguration
- A3.2 Projekte abrufen und erstellen
- A3.3 Grundlegendes Snapshotting
- A3.4 Branching und Merging
- A3.5 Projekte teilen und aktualisieren
- A3.6 Inspektion und Vergleich
- A3.7 Debugging
- A3.8 Patching
- A3.9 E-Mail
- A3.10 Externe Systeme
- A3.11 Administration
- A3.12 Plumbing-Befehle
2.7 Git-Grundlagen - Git-Aliase
Git-Aliase
Bevor wir zum nächsten Kapitel übergehen, möchten wir eine Funktion vorstellen, die Ihre Git-Erfahrung einfacher, leichter und vertrauter machen kann: Aliase. Der Klarheit halber werden wir sie im Rest dieses Buches nicht verwenden, aber wenn Sie Git regelmäßig verwenden, sollten Sie Aliase kennen.
Git schließt Ihren Befehl nicht automatisch ab, wenn Sie ihn nur teilweise eingeben. Wenn Sie nicht den gesamten Text jedes Git-Befehls eingeben möchten, können Sie mit git config ganz einfach einen Alias für jeden Befehl einrichten. Hier sind ein paar Beispiele, die Sie vielleicht einrichten möchten
$ 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 zum Beispiel, dass Sie anstelle von git commit nur git ci eingeben müssen. Wenn Sie Git weiterhin verwenden, werden Sie wahrscheinlich auch andere Befehle häufig verwenden. Zögern Sie nicht, neue Aliase zu erstellen.
Diese Technik kann auch sehr nützlich sein, um Befehle zu erstellen, von denen Sie denken, dass sie existieren sollten. Um beispielsweise das Benutzerfreundlichkeitsproblem beim Entrollen einer Datei zu beheben, können Sie Ihrem Git einen eigenen "unstage"-Alias hinzufügen
$ git config --global alias.unstage 'reset HEAD --'
Dies macht die folgenden beiden Befehle gleichwertig
$ git unstage fileA
$ git reset HEAD -- fileA
Das scheint etwas klarer zu sein. Es ist auch üblich, einen Befehl last hinzuzufügen, so
$ git config --global alias.last 'log -1 HEAD'
Auf diese Weise können Sie den letzten Commit leicht sehen
$ 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 sehen können, ersetzt Git den neuen Befehl einfach durch das, wofür Sie ihn aliasieren. Möglicherweise möchten Sie jedoch einen externen Befehl ausführen und keinen Git-Unterbefehl. In diesem Fall beginnen Sie den Befehl mit einem !-Zeichen. Dies ist nützlich, wenn Sie Ihre eigenen Tools schreiben, die mit einem Git-Repository arbeiten. Wir können dies demonstrieren, indem wir git visual so aliasieren, dass er gitk ausführt
$ git config --global alias.visual '!gitk'