W Atlassian SourceTree, jak sprawdzić, które tagi są tylko lokalne, a które również zdalne?
Podczas tworzenia tagu otrzymujesz opcję „Wypchnij tag do: ...”, ale jak sprawdzić, czy tag został przekazany, czy nie po utworzeniu? Widzę wszystkie moje tagi lokalnie, ale muszę się upewnić, że są one obecne w zdalnym, aby inni programiści mogli je wyciągnąć.
git
atlassian-sourcetree
cprcrack
źródło
źródło
Odpowiedzi:
Nawet bez klonowania lub pobierania możesz sprawdzić listę tagów w głównym repozytorium za pomocą
git ls-remote
:(jak zilustrowano w „ Kiedy wymieniasz git-ls-remote, dlaczego
^{}
po nazwie tagu znajduje się„ ”? ”)xbmono ilustruje w komentarzach, że cytaty są potrzebne:
Zauważ, że zawsze możesz przekazać swoje zatwierdzenia i tagi jednym poleceniem (git 1.8.3+, kwiecień 2013):
Zobacz Jednoczesne przekazywanie zatwierdzeń i tagów git .
W szczególności w odniesieniu do Atlassian SourceTree:
Zauważ, że z tego wątku SourceTree pokazuje TYLKO lokalne tagi.
Istnieje zgłoszenie RFE (Request for Enhancement)
SRCTREEWIN-4015
od grudnia 2015 r.Proste obejście:
zobaczyć listę tylko niezakupionych tagów?
W ten sposób będziesz „pewien, że są one obecne w zdalnym trybie, aby inni programiści mogli je wyciągnąć”.
źródło
git push --tags
vsgit push --follow-tags
refs/tags/MyTag^{}
uzyskać identyfikator zatwierdzenia powiązany z tym tagiem, ale to poleceniegit ls-remote
nic nie zwraca. Czy jest jakiś sposób, aby uzyskać identyfikator zatwierdzenia wyreferencjonowanego tagu?Możesz wyświetlić listę tagów w zdalnym repozytorium za pomocą
ls-remote
, a następnie sprawdzić, czy tam jest. Przypuśćmy, że nazwa zdalnego odwołania znajdujeorigin
się poniżej.Możesz też wyświetlać tagi lokalne za pomocą
tag
.Możesz porównać wyniki ręcznie lub w skrypcie.
źródło
git
pytań, aby się z nimi zapoznaćgit
. :)Actions -> Open in Terminal
, a następnie wpisaćgit ls-remote --tags origin
i uruchomić?