Single Branch Strategie

Versionsgeschichte
Version Aktualisierungsdatum
0.2 (git Befehle für diese Strategie) 30.05.2014
0.1 (Erste Fassung) 21.05.2014
Abbildung für eine einzigen Branch

Beschreibung

Die single Branch-Strategie ist die einfachste Methode eigene Daten zu versionieren. Man konzentriert sich dabei praktisch nur auf das Festschreiben von bestimmten Zuständen der Daten, einen Schnappschuss. Es entsteht, wie auf dem Bild gut zu sehen ist, ein vollkommen linearer Zeitstrahl mit den Änderungen an den Dokumenten.

Diese Strategie kann man ein wenig verbessern (Verbesserung in Hinblick auf die Datensicherheit / Backup), in dem man diesen einen Zweig auf ein externes Medium sichert (über Remote Branch bei git zum Beispiel, oder einfache Ordner-Sicherung).

Vorteile

  • Sehr einfache Benutzung. Für das Workflow müssen nur wenige Befehle erlern werden.
  • Keine Zusammenführung zwischen unterschiedlichen Zweigen (mergen) notwendig, da nur ein einziger Zweig vorhanden ist.
  • Sehr gut für den Einstieg in die Versionsverwaltung geeignet, insbesondere wenn man alleine arbeitet.
  • Sehr gut für Dokumenten-Versionierung (Bücher, Artikel, Manuskripte usw.), wenn diese immer weiter fortgeschrieben werden, aber die alten Stände nicht mehr (parallel) korrigiert werden müssen.

Nachteile

  • Arbeiten parallel an mehreren Versionen ist nicht möglich.
  • Paralleles Arbeiten mit mehreren Personen ist schwieriger.

Passende Befehle für die Arbeit mit git

Initialisierung des lokalen Repositories

Zuerst in das passende Verzeichnis wechseln (z.B. Dokumenten-Verzeichnis des Betriebssystems).

Linux / OS X

> cd ~/Documents

Windows

> cd %HOMEPATH%\Documents

Dann legen Sie einen neuen Ordner an, in dem Sie Ihre Dokumente versionieren wollen. In diesem Ordner wird sowohl eine Arbeitskopie Ihrer Dokumente liegen, als auch die komplette Geschichte von diesem.

> mkdir MeineVersionierteDokumente

Wechseln Sie nun in diesen Ordner.

> cd MeineVersionierteDokumente

Und initialisieren Sie ein neues git-Repository.

> git init
 Initialized empty Git repository in /Users/user_name/Documents/MeineVersionierteDokuemtne/.git/

Tägliche Arbeit mit dem Repository

Vormerken einer Datei für die Versionierung

> git add FileName.xyz

Festschreiben einer Version in die Versionsverwaltung

> git commit -m "Mein Kommentar für diese Version"
 [master (root-commit) 04ff96d] Mein Kommentar für diese Version
  1 file changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 FileName.xyz

Gleichzeitiges Vormerken aller geänderter Dateien und Festschreiben von diesen

> git commit -am "Mein Kommentar für die neue Version"
 [master 5cc8918] Mein Kommentar für die neue Version
  1 file changed, 4 insertions(+)

Prüfen des Zusatndes der Arbeitskopie

> git status
 On branch master
 Changes not staged for commit:
   (use "git add <file>..." to update what will be committed)
   (use "git checkout -- <file>..." to discard changes in working directory)
 
 	modified:   FileName.xyz
 
 no changes added to commit (use "git add" and/or "git commit -a")

Taggen / Benennen einer Version

> git tag "Release_0.1"

Auflistung der Historie

> git log
 commit ffb235496603e9566b3a12b60b1d37b1e1e8e9bb
 Author: Me <me@example.com>
 Date:   Fri May 30 15:23:42 2014 +0200
 
     Mein Kommentar für die spezielle Version
 
 commit 5cc8918a7d7f039e2171554337add0737c629dda
 Author: Me <me@example.com>
 Date:   Fri May 30 15:20:14 2014 +0200
 
     Mein Kommentar für die neue Version
 
 commit 04ff96dfb936eca11d2cdc144444b8355531dfbf
 Author: Me <me@example.com>
 Date:   Fri May 30 15:18:30 2014 +0200
 
     Mein Kommentar für diese Version

Es geht natürlich auch ein wenig schöner und kürzer.

> git log --oneline --decorate
 ffb2354 (HEAD, tag: Release_0.1, master) Mein Kommentar für die spezielle Versio
 5cc8918 Mein Kommentar für die neue Version
 04ff96d Mein Kommentar für diese Version