Crea un tag in un repository GitHub


910

Ho un repository in GitHub e ho bisogno di taggarlo .
Ho taggato in una shell, ma su GitHub non viene visualizzato.

Devo fare qualcos'altro?

Il comando che ho usato nella shell è:

git tag 2.0

E ora quando scrivo git tagmostra:

2.0

Quindi sembra che i tag siano presenti, giusto?

Il repository è: https://github.com/keevitaja/myseo-pyrocms .

Come faccio a mostrare questo tag su GitHub? Dove sono i miei tag?

Risposte:


1497

Puoi creare tag per GitHub utilizzando:

  • la riga di comando Git o
  • Interfaccia web di GitHub.

Creazione di tag dalla riga di comando

Per creare un tag sul ramo corrente, esegui questo:

git tag <tagname>

Se vuoi includere una descrizione con il tuo tag, aggiungi -aper creare un tag annotato :

git tag <tagname> -a

Questo creerà un localtag con lo stato corrente del ramo in cui ti trovi. Quando si invia al repository remoto, i tag NON sono inclusi per impostazione predefinita. Sarà necessario dire esplicitamente che si desidera inviare i tag al repository remoto:

git push origin --tags

Dalla documentazione ufficiale di Linux Kernel Git pergit push :

--tags

Vengono inviati tutti i ref sotto ref / tag, oltre ai refspec esplicitamente elencati nella riga di comando.

O se vuoi semplicemente inviare un singolo tag:

git push origin <tag>

Vedi anche la mia risposta a Come si spinge un tag in un repository remoto usando Git? per maggiori dettagli su quella sintassi sopra.

Creazione di tag tramite l'interfaccia web di GitHub

Puoi trovare le istruzioni di GitHub per questo nella loro pagina di aiuto per la creazione di rilasci . Ecco un riassunto:

  1. Fai clic sul link delle versioni nella nostra pagina del repository,

    Schermata 1

  2. Fai clic su Crea una nuova versione o Crea una nuova versione ,

    Schermata 2

  3. Compila i campi del modulo, quindi fai clic su Pubblica versione in basso,

    Schermata 3 Schermata 4

  4. Dopo aver creato il tuo tag su GitHub, potresti volerlo recuperare anche nel tuo repository locale:

    git fetch
    

La prossima volta, potresti voler creare un altro tag all'interno della stessa versione dal sito Web. Per questo segui questi passaggi:

Vai alla scheda di rilascio

  1. Fare clic sul pulsante Modifica per il rilascio

  2. Fornisci il nome del nuovo tag ABC_DEF_V_5_3_T_2 e premi la scheda

  3. Dopo aver colpito la scheda, l'interfaccia utente mostrerà questo messaggio: Eccellente! Questo tag verrà creato dalla destinazione quando pubblichi questa versione. Inoltre l'interfaccia utente fornirà un'opzione per selezionare il ramo / commit

  4. Seleziona filiale o commit

  5. Seleziona la casella di controllo "Questa è una pre-release" per il tag qa e deselezionala se il tag è stato creato per il tag Prod.

  6. Successivamente fai clic su "Rilascio aggiornamento"

  7. Ciò creerà un nuovo tag all'interno della versione esistente.


8
@RandomDSdevel in github, il rilascio è solo un tag. Puoi creare tag dalla riga di comando e inviarlo a github remote. il tag apparirà come rilascio sulla pagina web di githubs.
Iuri G.

6
@IuriG .: Beh, sì, ma non dovresti essere in grado di creare tag che non vengono automaticamente raccolti da GitHub come versioni ...? (Quando ho originariamente creato il commento a cui hai risposto e alla cui tua risposta questa è una risposta, i tag utilizzati almeno per trasformarsi automaticamente in versioni, anche se non so se questo è ancora il caso o no & thinsp; seguendo il flusso di lavoro spiegato nei suggerimenti di risposta, questo non è più vero. Ho inviato una richiesta di supporto a GitHub su questo un po 'di tempo fa, ma avevano un po' di backlog di supporto allora, quindi la mia richiesta è stata chiusa.)
RandomDSdevel

Fwiw, per il percorso dell'interfaccia web di Github, non riesco a vedere un pulsante Crea o bozza nuova versione dopo aver fatto clic sul collegamento delle versioni nel passaggio 1.
Snowcrash

2
tramite l'interfaccia Github è possibile creare solo tag leggeri.
Anatolii Stepaniuk,

2
Sfortunatamente, l'interfaccia di github non ti consente di taggare un commit a meno che non sia stato nelle ultime 24 ore o negli ultimi 10 (? Circa?) Commit.
Tsalaroth,

86

Creazione di tag

Git utilizza due tipi principali di tag: leggero e annotato .

Tag annotati :

Per creare un tag annotato in Git puoi semplicemente eseguire i seguenti semplici comandi sul tuo terminale.

$ git tag -a v2.1.0 -m "xyz feature is released in this tag."
$ git tag
v1.0.0
v2.0.0
v2.1.0

-M indica un messaggio per quel particolare tag. Possiamo scrivere un riepilogo delle funzionalità che verranno taggate qui.

Tag leggeri :

L'altro modo per contrassegnare i commit è un tag leggero. Possiamo farlo nel modo seguente:

$ git tag v2.1.0
$ git tag
v1.0.0
v2.0.0
v2.1.0

Push Tag

Per inviare un tag particolare puoi usare il comando seguente:

git push origin v1.0.3

Oppure, se si desidera inviare tutti i tag, utilizzare il comando seguente:

git push --tags

Elenca tutti i tag :

Per elencare tutti i tag, utilizzare il seguente comando.

git tag

Aggiungete il tag PRIMA o dopo il git commit?
Garfbradaz,

Ho aggiunto un tag dopo git commit.
Lawakush Kurmi,

65

Devi solo premere il tag dopo aver eseguito il git tag 2.0comando.

Quindi fallo e basta git push --tags.


40
Preferirei usare git push v2.0invece di --tags, ci potrebbero essere altri tag che non dovrebbero essere inviati.
tschoppi,

1
Questo è solo un problema se i tag locali differiscono dai tag remoti. Sono facili da sincronizzare se questo diventa un problema.
kjdion84,

1
@ kjdion84 No, questo è anche un problema se ci sono tag obsoleti: tutti i tag vengono sempre recuperati e quando qualcuno lo usa --tags, è difficile liberarsene.
maaartino,

2
oppuregit push origin v2.0
prayagupd,

Ho fatto l'errore di usare i tag!
Utente3

9

ATTENZIONE: nel comando nella risposta di Lawakush Kurmi ( git tag -a v1.0) -aviene utilizzata la bandiera. Questo flag dice a Git di creare un flag annotato. Se non fornisci il flag ( i.e. git tag v1.0), verrà creato quello che viene chiamato tag leggero.


Si consigliano tag con annotazioni, perché includono molte informazioni extra come:

  • la persona che ha creato il tag
  • la data di creazione del tag
  • un messaggio per il tag

Per questo motivo, dovresti sempre usare tag con annotazioni.


3

Tutto dipende dal tipo di tag che si desidera creare:

  • Se si desidera creare tag annotati, per mostrare i metadati in più, è possibile farlo nel modo seguente: git tag -a v1.0.0.
  • D'altra parte, i tag leggeri sono utilizzati per "segnalibro" i tuoi commit per uso privato: git tag v1.0.0.

Esistono alcune altre funzionalità di tag come:

  • Elenco tag - git tag -l -n3. Il comando elenca tutti i tag esistenti con un massimo di 3 righe del loro messaggio tag. Di default -n mostra solo la prima riga.
  • Dettagli tag - git show <tag_identifier>. Mostra tutto ciò che devi sapere su un tag specifico.
  • Ordinamento dei tag - git tag --sort=<type>
  • Pubblicazione di tag - git push origin v1.0. Puoi git push il tag singolarmente, oppure puoi eseguire git push --tags che invierà tutti i tag contemporaneamente.

Assicurati di controllare questo articolo relativo ai tag per informazioni più pertinenti.


3

Utilizzando Sourcetree

Ecco i semplici passaggi per creare un tag GitHub , quando si rilascia build dal master.

  1. Apri la scheda source_tree

    passo 1

  2. Fare clic con il tasto destro del mouse sulle sezioni Tag da Tag visualizzate nella sezione di navigazione sinistra

    passo 2

  3. Fai clic su Nuovo tag ()

  4. Viene visualizzata una finestra di dialogo per aggiungere tag e rimuovere tag
  5. Fare clic su Aggiungi tag da dare nome al tag (nome versione preferita del codice)

    passaggio 3

  6. Se si desidera spingere il TAG sul telecomando, durante la creazione del riferimento TAG: passaggio 5 che dà la casella di controllo push TAG all'origine controllarlo e il tag push appare sul repository remoto

  7. Nel caso in cui durante la creazione del TAG si sia dimenticato di selezionare la casella Push to origin , è possibile farlo in seguito facendo clic con il tasto destro del mouse sul TAG creato, fare clic su Push to origin. inserisci qui la descrizione dell'immagine


2
Questa risposta spiega come creare un tag locale usando Sourcetree, ma la domanda è tutta su come spingere il tag nel repository remoto (GitHub in questo caso). Dici di farlo nel passaggio 6, ma hai lasciato fuori le istruzioni per farlo.
Rory O'Kane,

@ RoryO'Kane, per favore, controllalo ora Ho aggiornato la mia risposta, Grazie per averlo segnalato
Suresh Maidaragi,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.