git fatal:No tags beschreiben kann <sha1-Anzahl>
Ich bin mit tags, indem Sie auf nightly builds. Dann später, ich möchte die Leistung von describe --tags --match <latest tag>
um mir zu sagen, wie weit von der nightly build meine Bilder sind. Dies ist für die QA-Tests.
Ich lief einfach in einen Fehler in einen Klon, der ist älter als der aktuelle tag. Ich lief git fetch --tags, so sehe ich die Tags in git-tag ausgegeben, aber wenn ich git describe --tags --match <tagname>
bekomme ich fatal: No tags can describe <head sha1 version number>
. Ich kann nicht einen git pull auf den Arbeitsbereich so aktualisieren, an dieser Stelle. Warum passiert das und gibt es eine Abhilfe? Vielen Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es geschieht, weil Sie nur das abrufen der tag, nicht die commit-Geschichte an den tag.
git describe
verwendet diese Geschichte, die ist, warum es ein Fehler.Die einzige Lösung ist, zu Holen repo Geschichte mit dem tag, der dich interessiert, mit
git fetch <remote-name>
.git fetch remote
. Können Sie den tag in gitk oder einer anderen Anzeige zu bedeuten? Sind Sie sicher, dass das tag ist ein Elternteil von Ihre aktuelle KOPF?Ich lief einfach in diesen Fehler mit
git version 2.8.3
und Befehlgit describe --abbrev=0
.War das problem, dass während dem tag gab es in der Herkunft und meinem lokalen repository up-to-date, den tag nicht über eine commit-Nachricht.
War der Fehler behoben, nachdem ich re-tagged die Begehung mit einem tag Nachricht:
Andere Erklärung kann sein, dass das repository geklont wurde mit einem
depth=xyz
Einstellung ( Travis hat standardmäßig ). In diesem Fall, die Geschichte könnte abgeschnitten werden, bevor die meisten heutigen tag.Technisch das Klonen mit
depth=xyz
erstellt einen seichten Klon mit Einträgen in.git/shallow
beschreiben, wo der cut off-Geschichte. Wenngit describe
dann geht die Geschichte könnte es sich zu, dass die cut-off-Punkt und Stoppt die Suche für einen tag. Das passiert auch, wenn Sie abgeholt tags manuell nach der ersten seichten Klon mitgit fetch --tags
.Wenn dies der Fall ist, müssen Sie
unshallow
repository (oder erstellen Sie eine voll (genug) - Klone in den ersten Platz). Sehen So konvertieren Sie ein Git "shallow clone", um ein "full clone"? um das problem zu lösen.Ich tatsächlich lief in dieser Fehlermeldung, wenn ich haben ein git-tag basierend auf git-Referenz.
Scheint es, dass die git-Referenz war nicht "in " master" und dies einige Probleme verursachen.
Also das Update war, den richtigen commit-Referenz in der master-und neu der tag.