In diesem Schritt werden wir untersuchen, wie sich git describe --tags
verhält, wenn wir nicht auf dem neuesten Commit sind. Dies zeigt, wie der Befehl Ihnen hilft, Ihre Position in der Projektgeschichte relativ zu Ihren Tags zu verstehen.
Zunächst stellen Sie sicher, dass Sie sich im Projektverzeichnis befinden:
cd ~/project/my-time-machine
Wir befinden uns derzeit auf dem neuesten Commit, der mit v1.1
getaggt ist. Lassen Sie uns git describe --tags
erneut verwenden, um dies zu bestätigen:
git describe --tags
Die Ausgabe sollte v1.1
sein, da der aktuelle Commit genau dort ist, wo das v1.1
-Tag zeigt.
Jetzt gehen wir zurück zum Commit, wo wir das v1.0
-Tag erstellt haben. Wir können git checkout
gefolgt vom Tag-Namen verwenden, um dies zu tun.
git checkout v1.0
Sie werden eine Ausgabe sehen, die darauf hinweist, dass Sie sich in einem 'detached HEAD'-Zustand befinden. Machen Sie sich darüber keine Sorgen; es bedeutet nur, dass Sie sich auf einen bestimmten Commit statt auf der Spitze eines Branches befinden.
Note: switching to 'v1.0'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command (for example,
'git switch -c <new-branch-name>'). Or, if you meant to switch to a number
of commits past an existing branch, what you probably want is to use
'git switch <branch-name>~<number>'.
Switched to a new branch 'v1.0'
Jetzt, da wir am Commit sind, der mit v1.0
getaggt ist, lassen Sie uns git describe --tags
erneut ausführen:
git describe --tags
Die Ausgabe sollte einfach sein:
v1.0
Dies liegt daran, dass der aktuelle Commit genau dort ist, wo sich das v1.0
-Tag befindet. Es gibt keine Commits zwischen der aktuellen Position und dem v1.0
-Tag.
Lassen Sie uns versuchen, zurück zum Commit zu gehen, wo wir das v0.9
-Tag erstellt haben:
git checkout v0.9
Wieder werden Sie die detached HEAD-Nachricht sehen.
Jetzt führen Sie git describe --tags
aus:
git describe --tags
Die Ausgabe sollte ähnlich sein:
v0.9
Dies bestätigt, dass git describe --tags
das nächste Tag von Ihrer aktuellen Position in der Commit-Historie korrekt identifiziert. Diese Fähigkeit, Commits relativ zu Tags zu beschreiben, ist sehr nützlich, um den Zustand Ihres Projekts zu verschiedenen Zeitpunkten zu verstehen.
Um zurück zum neuesten Commit auf dem master
-Branch zu gelangen, können Sie verwenden:
git checkout master
Sie sollten eine Ausgabe sehen, die darauf hinweist, dass Sie zurück zum master-Branch gewechselt haben:
Switched to branch 'master'
Your branch is up to date with 'origin/master'.