Ich habe ein Skript für ein großes Projekt, zehn Repositories, um Filialen (lokal, remote oder Tags) zu überprüfen und schließlich anzuzeigen, wo jeder der aktuelle Zweig in jedem Repository ist.Das neueste Tag in einem Commit mit mehreren Tags anzeigen
Ich verwende git branch
um anzuzeigen, welcher Zweig oder Tag im aktuellen Repository ausgecheckt ist. Dies funktioniert in den meisten Fällen gut, außer wenn in demselben Commit mehrere Tags vorhanden sind, was dazu führt, dass ein zufälliges Tag der Einsen in diesem Commit gedruckt wird.
Wie kann ich das beheben? Sollte ich es anders umsetzen?
Beispiel
for repo in ...
do
cd repo
git checkout $1 || git checkout $2 || git checkout $3 ....
git branch ##(to verify what happened)
done
lässt also sagen, dass ich laufen ./checkoutAll feat1 origin/feat1 tags/ALL7
aber ALL7
-Tag ist in der gleichen mit ALL6
begehen, git branch
zeigt die ALL6
statt ALL7
, dass ich speziell zur Kasse gebeten.
EDIT: Das Bild unten ist die Menschen zu helfen versucht, mir zu helfen,
Also, sagen wir, ich git checkout tags/V9.00.00.ALL.04
dann git branch zeigt ein zufälliges Tag (* detached from ..
) von denen, ausführen, existieren, 7 in diesem Beispiel. Gibt es eine Möglichkeit, die neuesten anzuzeigen? oder zumindest die anzeigen, die ich zur Kasse gebeten habe (auch wenn die ALL7 mit ALL9 identisch ist)?
Natürlich wird dies nur Show-Tags, die wurden für das aktuelle Commit erstellt. Ich bin mir nicht sicher, ob OP das will. – jweyrich
Wow, das ist großartig, ich habe die Frage bearbeitet, bevor ich deine Antwort ausgearbeitet habe. – thahgr