Git Tag
Zuletzt aktualisiert
git tag markiert einen bestimmten Commit mit einem Namen - normalerweise eine Release-Version wie v1.0.0. Tags gibt es in zwei Formen: leichtgewichtig (nur ein Name, der auf einen Commit zeigt) und annotiert (ein vollständiges Objekt mit einer Nachricht, einem Autor und einem Datum). Tags werden nicht automatisch gepusht, daher pushst du sie separat.
Probiere diese im Terminal-Playground aus - eine echte Shell in deinem Browser, nichts zu installieren.
Syntax
| Command | What it does |
|---|---|
git tag v1.0.0 | Einen leichtgewichtigen Tag auf HEAD erstellen |
git tag -a v1.0.0 -m "Release 1.0" | Einen annotierten Tag mit einer Nachricht erstellen |
git tag -a v1.0.0 <hash> | Einen bestimmten früheren Commit taggen |
git tag | Alle Tags auflisten |
git push origin v1.0.0 | Einen Tag zum Remote pushen |
git push --tags | Alle Tags pushen |
git tag -d v1.0.0 | Einen lokalen Tag löschen |
lightweight vs annotated
| Lightweight | Annotated | |
|---|---|---|
| Speichert eine Nachricht | Nein | Ja |
| Erfasst Autor und Datum | Nein | Ja |
| Gut für Releases | Nein | Ja |
git tag FAQ
Wie erstelle ich einen Tag in Git?
Für eine schnelle Markierung führe
git tag <name> aus (ein leichtgewichtiger Tag auf dem aktuellen Commit). Für ein Release erstelle einen annotierten Tag: git tag -a v1.0.0 -m "Release 1.0", der eine Nachricht, einen Autor und ein Datum speichert. Füge am Ende einen Commit-Hash hinzu, um einen älteren Commit zu taggen.Was ist der Unterschied zwischen leichtgewichtigen und annotierten Tags?
Ein leichtgewichtiger Tag ist nur ein Name, der auf einen Commit zeigt - ohne zusätzliche Daten. Ein annotierter Tag ist ein vollständiges Git-Objekt mit einer Nachricht, einem Tagger-Namen und einem Datum und kann verifiziert werden. Verwende annotierte Tags für Releases; leichtgewichtige Tags sind für temporäre oder private Markierungen in Ordnung.
Wie pushe ich Tags zum Remote?
Tags sind in einem normalen
git push nicht enthalten. Pushe einen bestimmten Tag mit git push origin <tagname> oder pushe alle Tags auf einmal mit git push --tags. Das bringt viele durcheinander - ein von dir erstellter Tag bleibt lokal, bis du ihn pushst.Wie lösche ich einen Tag?
Lösche einen lokalen Tag mit
git tag -d <tagname>. Um ihn auch vom Remote zu entfernen, führe git push origin --delete <tagname> aus (oder das ältere git push origin :refs/tags/<tagname>). Das Löschen lokaler und Remote-Tags sind separate Schritte.Kann ich das online üben?
Ja. Öffne den Terminal-Playground, um
git tag in einer echten Shell in deinem Browser auszuführen - nichts zu installieren. Coddys kostenloser interaktiver Git-Kurs behandelt Tagging und Releases ebenfalls Schritt für Schritt.