2013-05-30 13 views
5

Il comportamento predefinito di Git è non per inviare tag da un repository locale a uno remoto associato. In this answer viene spiegato come modificare questo comportamento per un singolo repository.Perché git non spinge i tag di default?

La mia domanda, è perché è questo il comportamento progettato di Git? In particolare, quali sono gli aspetti negativi dell'impostazione sul push automatico dei tag?

+1

'tag' è uno ** snapshot ** del repository. La mia ipotesi è che non dovrebbe essere aggiornato su push, a meno che tu voglia esplicitamente che sia pubblicato. – yuwang

+0

vedere anche http://stackoverflow.com/a/2988182/654952 – yuwang

+0

@yuwang: Ho già collegato a questa risposta. C'è un commento là ponendo la stessa domanda che è ancora senza risposta ... – Dror

risposta

5

se si considera il tag di qualsiasi progetto di grandi dimensioni (kernel linux, git itself, ...) si dovrebbe vedere i tag nelle centinaia.

Un Distributed VCS è tutto publication: che cosa si vuole spingere?
Tutto? Tutto il tempo?

Spingere tutti i tag possono inquinare lo spazio tag dallo upstream repo.

Con il comportamento corrente, si mantiene il controllo di ciò che si pubblica sul repository upstream, per gli altri a vedere.


Nota che, dal momento Git 1.8.3 (aprile 2013), il git push --follow-tags può aiutare a spingere i depositi e le loro tag associati in un unico comando.

Vedere "Push git commits & tags simultaneously".

Problemi correlati