Cache

2017-03-27 4 views
0

ich scheine nicht lokal oder im Fern keine git-Tags zu haben, da die folgenden Befehle keine Ausgabe haben:Cache

git tag -l 
git ls-remote --tags 

Allerdings bauen sie meine Jenkins, das ist die Schaffung ein Tag und es an den Remote-Schiebe schlägt mit der folgenden Meldung:

The git-tag command failed. 
Command output: 
fatal: tag 'my-tag' already exists 

die git Tag Schöpfung unter der Haube getan wird, so dass es schwer zu testen ist. Ich nehme an, einige der alten Tags wurden möglicherweise zwischengespeichert.

Gibt es irgendeine Konfiguration, die Git als Cache speichert?

In diesem Fall gibt es eine Möglichkeit, den lokalen und den Remote-Git-Cache zu löschen, nur für den Fall, dass einige alte Tags dort bleiben?

Antwort

1

Dies ist möglicherweise, weil Jenkins versucht, den gleichen Tag mehr als einmal auf seinem lokalen git Repo zu erstellen. Sie können dies bestätigen, indem Sie git tag -l auf der Jenkins-Box ausführen. Vermutlich hat Jenkins das Tag nicht zum Ursprung verschoben, weil es fehlschlägt (?) Und deshalb sehen Sie es nicht auf dem Server.

Have Jenkins den Tag jedes Mal entfernen, bevor einen Tag erstellen:

git tag -d mytag 
do some stuff 
git tag mytag 
git push 
.... 

Dann, wenn es einen Tag mit dem gleichen Namen neu zu erstellen versucht, Sie sicher sein werden, dass sie zuerst entfernt wird.