Testen eines leeren Repositorys
In diesem Schritt werden wir untersuchen, was passiert, wenn Sie git log
und git rev-list --count HEAD
in einem Git-Repository ausführen, das noch keine Commits enthält. Dies wird Ihnen helfen, die Ausgabe zu verstehen, die Sie im ersten Lab gesehen haben, als Sie Ihr Repository erstmals initialisiert haben.
Zunächst erstellen wir ein neues, leeres Verzeichnis und initialisieren darin ein Git-Repository. Stellen Sie sicher, dass Sie sich im Verzeichnis ~/project
befinden:
cd ~/project
mkdir empty-repo
cd empty-repo
git init
Sie sollten die Meldung sehen, die darauf hinweist, dass ein leeres Git-Repository initialisiert wurde:
Initialized empty Git repository in /home/labex/project/empty-repo/.git/
Lassen Sie uns nun git log
in diesem leeren Repository ausführen:
git log
Sie werden eine Ausgabe ähnlich der folgenden sehen:
fatal: your current branch 'master' does not have any commits yet
Diese Meldung sagt Ihnen genau, was passiert: Es gibt keine Commits im aktuellen Branch (master
). git log
benötigt Commits, um eine Historie anzuzeigen, daher meldet es, dass es nichts anzuzeigen gibt.
Als Nächstes probieren wir git rev-list --count HEAD
:
git rev-list --count HEAD
Diesmal wird die Ausgabe sein:
0
Das ergibt Sinn! Da es keine Commits gibt, ist die Anzahl der von HEAD
aus erreichbaren Commits null.
Der Vergleich der Ausgabe dieser Befehle in einem leeren Repository mit unserem my-time-machine
-Repository (das einen Commit enthält) hilft Ihnen, Ihr Verständnis davon zu festigen, was diese Befehle tun. git log
zeigt die Details der Commits an, während git rev-list --count
Ihnen eine einfache Anzahl gibt. Beide Befehle spiegeln genau den Zustand der Repository-Historie wider.
Sie können nun das Verzeichnis empty-repo
entfernen, da wir es für die nächsten Schritte nicht mehr benötigen:
cd ~/project
rm -rf empty-repo