Woher wissen Sie in Atlassian SourceTree, welche Tags nur lokal und welche auch remote sind?
Wenn Sie ein Tag erstellen, erhalten Sie die Option "Tag verschieben an: ...". Wie können Sie jedoch feststellen, ob ein Tag nach dem Erstellen verschoben wurde oder nicht? Ich kann alle meine Tags lokal sehen, aber ich muss sicherstellen, dass sie in Remote vorhanden sind, damit andere Entwickler sie abrufen können.
git
atlassian-sourcetree
cprcrack
quelle
quelle
Antworten:
Auch ohne Klonen oder Abrufen können Sie die Liste der Tags im Upstream-Repo überprüfen mit
git ls-remote
:(wie in " Beim Auflisten von git-ls-remote dargestellt, warum steht
^{}
nach dem Tag-Namen " "? ")xbmono zeigt in den Kommentaren, dass Anführungszeichen benötigt werden:
Beachten Sie, dass Sie Ihre Commits und Tags immer in einem Befehl mit (git 1.8.3+, April 2013) übertragen können:
Siehe Push-Git-Commits und -Tags gleichzeitig .
In Bezug auf Atlassian SourceTree speziell:
Beachten Sie, dass in diesem Thread NUR SourceTree lokale Tags anzeigt.
SRCTREEWIN-4015
Seit Dezember 2015 ist eine RFE (Request for Enhancement) angemeldet .Eine einfache Problemumgehung:
Eine Liste nur ungepusster Tags anzeigen?
Auf diese Weise sind Sie "sicher, dass sie in Remote vorhanden sind, damit andere Entwickler sie abrufen können".
quelle
git push --tags
vsgit push --follow-tags
refs/tags/MyTag^{}
, eine Commit-ID mit diesem Tag zu verknüpfen, aber dieser Befehlgit ls-remote
gibt nichts zurück. Gibt es eine Möglichkeit, die Commit-ID eines dereferenzierten Tags abzurufen?Sie können die Tags im Remote-Repository mit auflisten
ls-remote
und dann überprüfen, ob sie vorhanden sind. Angenommen, der Name der Remote-Referenz lautet wieorigin
folgt.Und Sie können lokale Tags mit auflisten
tag
.Sie können die Ergebnisse manuell oder per Skript vergleichen.
quelle
git
Fragen zu lösen , um mich damit vertraut zu machengit
. :)Actions -> Open in Terminal
und dann eingebengit ls-remote --tags origin
und ausführen?