2009-04-24 13 views
15

Ho apportato correttamente, commesso e inviato le modifiche a un repository git centrale. Mi rendo conto ora che voglio taggare la versione corrente di tutti i file. Così faccio:Come si esegue il commit di un tag git?

git tag -a 0.5 

Che succede. Ma ora provo un git push e mi viene detto che non c'è nulla da impegnare. Come posso inviare il mio nuovo tag al repository centrale?

(Si noti che git tag mostra il tag 0.5, ma solo a livello locale)

+0

Possibile duplicato di [I tag git vengono spinti anche?] (Http://stackoverflow.com/questions/2988088/do-git-tags-get-pushed-as-well) –

risposta

25

Penso che si desidera

git push --tags 

come che, beh, spinge tutti i tag :)

Ci sono alcuni alternative naturalmente, questo è git e tutto (sostituire l'origine con il repository prescelto):

o

git push origin refs/tags/0.5:refs/tags/0.5 

Vedi git-push(1) per ulteriori dettagli. "git ready" contiene anche alcune informazioni utili nell'articolo tagging.

+0

Yeap! È esattamente così, grazie. – ChrisInEdmonton

+1

** Addendum: ** se crei nuovi commit sul tuo ramo, quindi premi (quindi c'è qualcosa da trasferire), git dovrebbe rilevare tutti i nuovi tag che puntano a commit presenti dopo il push sul lato remoto, e spingerli pure. –

+2

I repository config git predefiniti non inseriscono i tag che si verificano sui commit. I tag vengono inseriti solo se esplicitamente chiamati o --tags usati. –

3

Dal git 1.8.3 (April 22d, 2013), provare una:

git push --follow-tags 

Quando si preme nuovi commit, ogni tag a cui fa riferimento quei commit sarebbe spinto oltre.
Nel tuo caso, qualsiasi tag referenziato da un commit già inviato a deve essere premuto.

Ciò consente di utilizzare sempre un comando quando si premono i comandi e.

+0

Grazie mille per aver fornito più informazioni per una domanda piuttosto vecchia. Sicuramente vale il mio +1. – ChrisInEdmonton

Problemi correlati