Start·Terminal-Befehle

git describe

git

Aufruf

git describe [--tags] [--dirty]

Benennt den aktuellen Commit anhand des nächsten Tags, etwa v1.2.0-5-gabc1234; standardmäßig sieht es nur annotierte Tags, leichte brauchen --tags und ein Repository ohne Tag braucht --always.

Häufige Optionen

OptionBedeutung
--tagsuse lightweight tags too, not just annotated ones
--dirtyappend -dirty when the working tree has changes
--alwaysfall back to a bare hash when no tag is found
--longalways the full tag-count-hash form
--abbrev=<n>how many hash digits to print
--match <pattern>only consider matching tags

Beispiele

git describe --tags --dirty

prints something like v1.2.0-5-gabc1234-dirty

git describe --always

never fails, even in a repository with no tags

git describe --match "v*" --long

ignores tags that are not versions

Verwirrend ist, dass Rückgängig mehrere Formen hat — den Zeiger eines Branch zu verschieben ist nicht dasselbe wie einen Gegen-Commit zu setzen.

So liest man das

  • Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
  • Drei Punkte … heißen: mehrere sind erlaubt.
  • Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.

Häufige Fragen

Q. Was macht git describe?

Benennt den aktuellen Commit anhand des nächsten Tags, etwa v1.2.0-5-gabc1234; standardmäßig sieht es nur annotierte Tags, leichte brauchen --tags und ein Repository ohne Tag braucht --always.

Q. Wie gibt man ihn ein?

git describe [--tags] [--dirty] — eckige Klammern markieren, was wegfallen darf.

Q. Wie viele Optionen lohnen sich?

Hier stehen 6; die vollständige Liste steht in man git. Der Befehl gehört zu git.

Verwandte Befehle

man-Seite: man git-describe