linux.txt/programmieren/git/grundbegriffe.tex
2025-02-15 15:39:11 +01:00

53 lines
2.3 KiB
TeX

% master: grundbegriffe.tex
% Grundbegriffe v0.1
% 2017-01-09 (Rx)
\section{Grundbegriffe}
%----------------------
\begin{verbatim}
Versionkontrollsystem (Version Control System, VCS)
Eine Versionsverwaltung ist ein System, das zur Erfassung von Änderungen
an Dokumenten oder Dateien verwendet wird.
Zum Beispiel:
Zentrale Systeme - zentraler Server
RCS-Revision Control System, CVS-Concurrent Versions System,
SVN-Subversion
Verteilte Systeme - Kein zentraler Server
Bazaar, Darcs, Fossil, Git, GNU arch, Mercurial, Monotone
Repository
Nutzt Git als Dantenbank in der die verschiedenen Zustände jeder Datei
eines Projektes über die Zeit hinweg ablegt. Jede Änderrung wird als
Commit verpackt und abgespeichert.
Working Tree
Das Arbeitsverzeichnis von Git, oft auch Working Directory genannt.
Commit
Das speichern der veränderten Dateien im Repository.
HEAD
Eine symbolische Referenz auf den neusten Commit im aktuellen Branch.
SHA-1
Der Secure Hash Algorithm erstellt eine eindeutige, 160 Bit lange
Prüfsumme. Alle Commits in Git werden nach ihrer SHA-1-Summe benannt,
die aus dem Inhalt und den Metadaten des Commits errechnet wird.
Objektmodell
Ein Git-Repository lässt sich als Graph von Commits modellieren, der
durch Git-Kommandos manipuliert wird.
Index
Der Index ist eine Zwischenstufe zwischen Working Tree und Repository,
in der Sie einen Commit vorbereiten. Enthält also die Dateien für den
nästen Commit.
Clone
Wenn Sie sich ein Git-Repository aus dem Internet herrunterladen.
Enthält die gesamte Versionsgeschichte einschließlich aller Commits.
Branch
Eine Abzweigung in der Entwicklung. Zum Beispiel für neue Featurs,
Release vorbereitung oder alte Versionen mit Bugfixes zu versorgen.
master
Beim Initialisieren eines neuen Repositorys wird der Branch master
erstellt analog trunk in anderen Systemen.
Tag
Tags sind symbolische Namen für schwer zu merkende SHA-1-Summen.
Wichtige Commits, wie zum Beispiel Releases v1.2.3. oder können
zusätzliche Metadateien wie Autor, Beschreibung und GPG-Signatur
enthalten.
\end{verbatim}