Du bist im Begriff, viele Stunden mit dem Lesen eines Buches über Git zu verbringen. Nehmen wir uns eine Minute Zeit, um zu erklären, was wir für dich bereithalten. Hier findest du eine kurze Zusammenfassung der zehn Kapitel und drei Anhänge dieses Buches.
In Kapitel 1 werden wir Version Control Systeme (VCSs) und die Grundlagen von Git behandeln – kein technisches Zeug: was Git ist, warum es in einem Land voller VCSs überhaupt entstanden ist, was es auszeichnet und warum so viele Menschen es benutzen. Dann werden wir beschreiben, wie du Git herunterladen und initial einrichten kannst, wenn du es noch nicht auf deinem System installiert hast.
In Kapitel 2 gehen wir auf die grundlegende Git-Verwendung ein – wie du Git in den 80% der Fälle verwendest, die dir wahrscheinlich am häufigsten begegnen werden. Nachdem du dieses Kapitel gelesen haben, solltest du in der Lage sein, ein Repository zu klonen, zu sehen, was in seiner Verlaufshistorie passiert ist, Dateien zu modifizieren und Änderungen beizutragen. Wenn das Buch zu diesem Zeitpunkt spontan in Flammen aufgeht, solltest du in der Zeit, die du brauchst, um dir ein weiteres Exemplar zu holen, bereits ziemlich versiert im Umgang mit Git sein.
In Kapitel 3 geht es um das Branching-Modell von Git, das oft als Gits Killer-Funktion beschrieben wird. Hier erfährst du, was Git wirklich von der Masse abhebt. Wenn du das Kapitel zu Ende gebracht hast, wirst du vielleicht in einem ruhigen Moment darüber nachdenken, wie du bisher ohne Gits Branching hast Leben können (du wirst keine Antwort finden :-)).
Kapitel 4 befasst sich mit Git auf dem Server. Mit diesem Kapitel wenden wir uns an diejenigen von euch, die Git innerhalb Ihrer Organisation oder auf Ihrem eigenen persönlichen Server für die gemeinsame Entwicklung einrichten möchten. Wir werden auch verschiedene Hosting-Optionen erörtern, falls du es vorziehst, dass jemand anderes diese Aufgabe für dich übernimmt.
Kapitel 5 geht ausführlich auf verschiedene dezentrale Workflows ein und wie man sie mit Git realisieren kann. Wenn du dieses Kapitel durchgearbeitet hast, solltest du in der Lage sein, professionell mit mehreren Remote-Repositorys zu arbeiten, Git über E-Mail zu verwenden und geschickt mit zahlreichen Remote-Branches und beigesteuerten Patches zu hantieren.
Kapitel 6 befasst sich detailliert mit dem GitHub-Hosting-Service und dem Tooling. Wir behandeln die Anmeldung und Verwaltung eines Kontos, die Erstellung und Nutzung von Git-Repositorys, Git-Workflows, um zu Projekten beizutragen und Beiträge für deine Projekte anzunehmen, die Programmoberfläche von GitHub und viele kleine Tipps, die dir das tägliche Arbeiten im Allgemeinen erleichtern.
Kapitel 7 befasst sich mit anspruchsvollen Git-Befehlen. Hier erfährst du mehr über Themen wie das Beherrschen des „furchterregenden“ Reset-Befehls, die Verwendung der Binärsuche zur Identifizierung von Fehlern, die Bearbeitung des Verlaufs, die detaillierte Auswahl der Revision und vieles mehr. Dieses Kapitel wird dein Wissen über Git perfektionieren, so dass du zu einem echten Meister wirst.
Kapitel 8 behandelt die Konfiguration deiner individuellen Git-Umgebung. Dazu gehört die Einrichtung von Hook-Skripten zur Umsetzung oder Unterstützung eigener Regeln und die Verwendung von Konfigurationseinstellungen für die Benutzerumgebung, damit du so arbeiten kannst, wie du es dir vorstellst. Wir befassen uns auch mit der Erstellung eigener Skripte zur Umsetzung einer benutzerdefinierten Commit-Richtlinie.
Kapitel 9 beschäftigt sich mit Git und anderen VCS-Systemen. Dazu gehört die Verwendung von Git in einer Subversion-Umgebung (SVN-Umgebung) und die Umwandlung von Projekten aus anderen VCSs nach Git. Viele Unternehmen verwenden immer noch SVN und haben nicht vor, etwas zu ändern. Du hast jedoch die unglaubliche Leistungsfähigkeit von Git kennengelernt. Dieses Kapitel zeigt dir, wie du damit umgehen kannst, wenn du noch einen SVN-Server verwenden musst. Wir besprechen auch, wie man Projekte aus unterschiedlichen Systemen importiert, wenn du dann (hoffentlich) alle davon überzeugt hast, den Sprung nach Git zu wagen.
Kapitel 10 vertieft die dunklen und zugleich wundervollen Tiefen der Git-Interna. Jetzt, da du alles über Git weißt und es mit Macht und großer Eleganz bedienen kannst, kannst du weiter darüber reden, wie Git seine Objekte speichert, was das Objektmodell ist, Einzelheiten zu Packfiles, Server-Protokollen und vielem mehr. Im gesamten Buch werden wir auf Abschnitte dieses Kapitels Bezug nehmen. Falls du an diesem Punkt das Bedürfnis hast, tiefer in die technischen Details einzutauchen (so wie wir), solltest du vielleicht zuerst Kapitel 10 lesen. Das überlassen wir ganz dir.
In Anhang A schauen wir uns eine Reihe von Beispielen für den Git-Einsatz in verschiedenen speziellen Anwendungsumgebungen an. Wir befassen uns mit einer Vielzahl verschiedener GUIs und Entwicklungs-Umgebungen, in denen du Git einsetzen kannst. Wenn du an einem Überblick über die Verwendung von Git in deiner Shell, deiner IDE oder deinem Texteditor interessiert bist, schaue hier nach.
In Anhang B erkunden wir das Scripting und die Erweiterung von Git durch Tools wie libgit2 und JGit. Wenn du an der Entwicklung komplexer, schneller und benutzerdefinierter Tools interessiert bist und einen Low-Level-Git-Zugang benötigst, kannst du hier nachlesen, wie so etwas funktioniert.
Schließlich gehen wir in Anhang C alle wichtigen Git-Befehle einzeln durch und wiederholen, wo wir sie im Buch behandelt haben und wie wir sie genutzt haben. Wenn du wissen möchtest, wo in dem Buch wir einen bestimmten Git-Befehl verwendet haben, kannst du ihn hier nachschlagen.
Lass uns beginnen.