2011-10-30 11 views
63

sul mozzo git ho ri-aggiunto il tag facendo:tag git cancellare e aggiungere nuovamente

git tag -d 12.15 
git push origin :refs/tags/12.15 
git tag -a 12.15 -m '12.15' 
git push --tags 

Il tag è ancora riferisce al vecchio tag su GitHub, ma localmente è fatto bene.

AGGIORNAMENTO: Sembra che Github stia elencando l'ultimo commit errato, ma lo sta scaricando correttamente.

+13

'git tag -d' cancella un tag. In realtà quello che sono venuto qui cercavo ... :) –

risposta

65

Il riferimento è https://stackoverflow.com/a/5480292/1317035

Hai solo bisogno di spingere un riferimento 'vuota' per il nome del tag remoto:

git push origin :tagname 

O, più espressivo, utilizzare l'opzione --delete:

git push --delete origin tagname 

Se si spinge un ramo, un tag o un altro riferimento a un archivio remoto, è necessario specificare "push dove, quale origine, quale destinazione?"

git push where-to-push source-ref:destination-ref 

Un vero esempio del mondo in cui si spinge il vostro ramo principale al ramo master del origine è:

git push origin refs/heads/master:refs/heads/master 

che a causa di percorsi di default, può essere ridotto a:

git push origin master:master 

Tag funziona allo stesso modo:

git push refs/tags/release-1.0:refs/tags/release-1.0 

omettendo il ref sorgente (la parte prima dei due punti), si preme "nulla" sulla destinazione, eliminando il riferimento sul terminale remoto.

+3

belle informazioni sul perché aggiungere ':' funziona .. grazie .. –

+0

@guymograbi puoi trovare maggiori informazioni qui http://git-scm.com/docs/git- spingere # OPZIONI – nickleefly

Problemi correlati