Skip to content

Latest commit

 

History

History
37 lines (31 loc) · 3.08 KB

plumbing-porcelain.asc

File metadata and controls

37 lines (31 loc) · 3.08 KB

Basisbefehle und Standardbefehle (Plumbing and Porcelain)

In diesem Buch wird in erster Linie beschrieben, wie Git mit etwa 30 Standardbefehlen wie checkout, branch, remote usw. verwendet wird. Git war ursprünglich ein Werkzeug für ein Versionskontrollsystem und kein benutzerfreundliches VCS. Somit verfügt es über eine Reihe von Basisbefehlen, die auf niedriger Ebene ausgeführt werden und so konzipiert sind, dass sie im UNIX-Stil verkettet oder über Skripte aufgerufen werden können. Diese Befehle werden im Allgemeinen als Basisbefehle von Git bezeichnet, während die benutzerfreundlicheren Befehle als Standardbefehle bezeichnet werden.

Wie du bereits bemerkt hast, befassen sich die ersten neun Kapitel dieses Buches fast ausschließlich mit Standardbefehlen. In diesem Kapitel wirst du dich jedoch hauptsächlich mit den Basisbefehle der niedrigeren Ebene befassen. Diese ermöglichen dir den Zugriff auf das Innenleben von Git und helfen dir dabei zu demonstrieren, wie und warum Git das tut, was es tut. Viele dieser Befehle sollten nicht manuell in der Befehlszeile verwendet werden, sondern als Bausteine für neue Tools und benutzerdefinierte Skripts genutzt werden.

Wenn du git init in einem neuen oder vorhandenen Verzeichnis ausführst, erstellt Git das .git Verzeichnis, in dem sich fast alles befindet, was Git speichert und bearbeitet. Wenn du dein Repository sichern oder klonen möchtest, erhältst du beim Kopieren dieses einzelnen Verzeichnisses fast alles, was du benötigst. Dieses gesamte Kapitel befasst sich im Wesentlichen mit dem, was du in diesem Verzeichnis finden kannst. So sieht ein neu initialisiertes .git -Verzeichnis normalerweise aus:

$ ls -F1
config
description
HEAD
hooks/
info/
objects/
refs/

Abhängig von deiner Git-Version siehst du dort möglicherweise zusätzlichen Inhalt, aber dies ist ein neu erstelltes git init Repository – das solltest du standardmäßig sehen. Die description Datei wird nur vom GitWeb-Programm verwendet, du brauchst sie also nicht weiter zu beachten. Die config Datei enthält deine projektspezifischen Konfigurationsoptionen, und das info Verzeichnis enthält eine globale Ausschlussdatei für ignorierte Muster, die du nicht in einer .gitignore Datei verfolgen möchtest. Das hooks Verzeichnis enthält deine client- oder serverseitigen Hook-Skripte, die ausführlich in ch08-customizing-git.asc beschrieben werden.

Dies hinterlässt vier wichtige Einträge: die HEAD – und (noch zu erstellenden) 'index` Dateien sowie die objects – und refs Verzeichnisse. Dies sind die Kernelemente von Git. Das objects -Verzeichnis speichert den gesamten Inhalt für deine Datenbank, das refs Verzeichnis speichert Zeiger auf Commit-Objekte in diesen Daten (Branches, Tags, Remotes, usw.) und die HEAD Datei zeigt auf den Branch, den du gerade ausgecheckt hast. In der index Datei speichert Git deine Staging-Bereichsinformationen. Du wirst dir nun jeden dieser Abschnitte genauer ansehen, um zu sehen, wie Git funktioniert.