Crie uma tag em um repositório do GitHub


910

Eu tenho um repositório no GitHub e preciso marcá- lo.
Eu marquei um shell, mas no GitHub , ele não está aparecendo.

Eu tenho que fazer mais alguma coisa?

O comando que usei no shell é:

git tag 2.0

E agora, quando digito git tag, mostra:

2.0

Parece que as tags estão presentes, correto?

O repositório é: https://github.com/keevitaja/myseo-pyrocms .

Como faço para que essa tag apareça no GitHub? Onde estão minhas tags?

Respostas:


1497

Você pode criar tags para o GitHub usando:

  • a linha de comando do Git ou
  • Interface web do GitHub.

Criando Tags a partir da Linha de Comandos

Para criar uma tag no seu ramo atual, execute o seguinte:

git tag <tagname>

Se você deseja incluir uma descrição com sua tag, adicione -apara criar uma tag anotada :

git tag <tagname> -a

Isso criará uma localtag com o estado atual da filial em que você está. Ao enviar para o repo remoto, as tags NÃO são incluídas por padrão. Você precisará dizer explicitamente que deseja enviar suas tags para seu repositório remoto:

git push origin --tags

Na documentação oficial do Linux Kernel Git paragit push :

--tags

Todas as refs em refs / tags são enviadas por push, além dos refspecs listados explicitamente na linha de comando.

Ou se você quiser apenas enviar uma única tag:

git push origin <tag>

Veja também minha resposta para Como você envia uma tag para um repositório remoto usando o Git? para mais detalhes sobre essa sintaxe acima.

Criando tags através da interface da web do GitHub

Você pode encontrar as instruções do GitHub para isso na página de ajuda do Creating Releases . Aqui está um resumo:

  1. Clique no link releases em nossa página de repositório,

    Captura de tela 1

  2. Clique em Criar uma nova versão ou Rascunhar uma nova versão ,

    Captura de tela 2

  3. Preencha os campos do formulário e clique em Publicar liberação na parte inferior,

    Captura de tela 3 Captura de tela 4

  4. Depois de criar sua tag no GitHub, você também pode buscá-la no seu repositório local:

    git fetch
    

Agora, da próxima vez, convém criar mais uma tag na mesma versão do site. Para isso, siga estas etapas:

Vá para a guia release

  1. Clique no botão editar para o lançamento

  2. Forneça o nome da nova tag ABC_DEF_V_5_3_T_2 e clique na guia

  3. Depois de pressionar a guia, a interface do usuário mostrará esta mensagem: Excelente! Essa tag será criada a partir do destino quando você publicar esta versão. A interface do usuário também fornecerá uma opção para selecionar a ramificação / confirmação

  4. Selecionar ramificação ou confirmação

  5. Marque a caixa de seleção "Esta é uma pré-versão" para a tag qa e desmarque-a se a tag for criada para a tag Prod.

  6. Depois disso, clique em "Atualizar versão"

  7. Isso criará uma nova tag na versão existente.


8
@RandomDSdevel no github, release é apenas uma tag. Você pode criar uma marca na linha de comando e enviá-la para o github remote. A tag aparecerá como um lançamento na página da web githubs.
Iuri G.

6
@IuriG .: Bem, sim, mas você não deveria ser capaz de criar tags que não são automaticamente escolhidas pelo GitHub como lançamentos ...? (Quando eu originalmente criei o comentário ao qual você respondeu e a cuja resposta essa é uma resposta, as tags pelo menos costumavam se transformar em lançamentos automaticamente, embora eu não saiba se esse ainda é o caso ou não & thinsp; seguindo o fluxo de trabalho explicado nas suas dicas de resposta, isso não é mais verdade. Enviei uma solicitação de suporte ao GitHub sobre isso há um tempo atrás, mas eles tinham um pouco de backlog de suporte na época, então minha solicitação foi encerrada.)
RandomDSdevel

Fwiw, para o caminho interface web Github, eu não posso ver um Criar ou Projecto de um novo botão de libertação depois de clicar os lançamentos ligar no Passo 1.
Snowcrash

2
via interface do Github, você pode criar apenas tags leves.
Anatolii Stepaniuk

2
Infelizmente, a interface do github não permite que você marque uma confirmação, a menos que tenha sido nas últimas 24 horas ou nas últimas 10 (ou mais?).
tsalaroth 8/01/19

86

Criando Tags

O Git usa dois tipos principais de tags: leve e anotado .

Tags anotadas :

Para criar uma tag anotada no Git, basta executar os seguintes comandos simples no seu terminal.

$ 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

O -m denota mensagem para essa tag específica. Podemos escrever um resumo dos recursos que serão marcados aqui.

Tags leves :

A outra maneira de marcar confirmações é uma marcação leve. Podemos fazer isso da seguinte maneira:

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

Push Tag

Para enviar uma tag específica, você pode usar o comando abaixo:

git push origin v1.0.3

Ou se você deseja enviar todas as tags por push, use o comando abaixo:

git push --tags

Listar todas as tags :

Para listar todas as tags, use o seguinte comando.

git tag

Você adiciona a tag ANTES ou depois da git commit?
precisa saber é

Eu adicionei tag após o git commit.
Lawakush Kurmi

65

Você só precisa pressionar a tag depois de executar o git tag 2.0comando.

Então, faça git push --tagsagora.


40
Prefiro sugerir o uso, em git push v2.0vez de --tags, pode haver outras tags que não devem ser enviadas.
Tschoppi 15/05

1
Isso é apenas um problema se as tags locais diferirem das tags remotas. Eles são fáceis de sincronizar se isso se tornar um problema.
precisa saber é o seguinte

1
@ kjdion84 Não, isso também é um problema se houver tags obsoletas: todas as tags são sempre buscadas e quando alguém as usa --tags, é difícil se livrar delas.
Maaartinus 12/10

2
ougit push origin v2.0
prayagupd 15/11

Eu cometi o erro de usar tags!
usar o seguinte

9

CUIDADO: No comando da resposta de Lawakush Kurmi (git tag -a v1.0 ) a -abandeira é usada. Esse sinalizador informa ao Git para criar um sinalizador anotado. Se você não fornecer a flag ( i.e. git tag v1.0), ela criará o que é chamado de tag leve.


Tags anotadas são recomendadas porque incluem muitas informações extras, como:

  • a pessoa que criou a tag
  • a data em que a etiqueta foi feita
  • uma mensagem para a tag

Por esse motivo, você deve sempre usar tags anotadas.


3

Tudo depende do tipo de tag que você deseja criar:

  • Se você deseja criar tags anotadas, para mostrar metadados extras, pode fazê-lo da seguinte maneira: git tag -a v1.0.0 .
  • Por outro lado, as marcas leves são usados para "marcador" seus commits para uso privado: git tag v1.0.0.

Existem algumas outras funcionalidades de tag, como:

  • Tags de listagem - git tag -l -n3 . O comando lista todas as tags existentes com no máximo 3 linhas de sua mensagem. Por padrão, -n mostra apenas a primeira linha.
  • Detalhes da tag - git show <tag_identifier> . Ele mostra tudo o que você precisa saber sobre uma tag específica.
  • Classificação de tags - git tag --sort=<type>
  • Publicando tags - git push origin v1.0. Você pode git push a tag individualmente, ou pode executar git push --tags que empurrará todas as tags de uma só vez.

Verifique este artigo relacionado a tags para obter informações mais relevantes.


3

Usando Sourcetree

Aqui estão as etapas simples para criar uma tag do GitHub , quando você libera a compilação do master.

  1. Abra a guia source_tree

    passo 1

  2. Clique com o botão direito do mouse nas seções Tag de Tag, que aparecem na seção de navegação esquerda

    passo 2

  3. Clique em Nova tag ()

  4. Uma caixa de diálogo aparece para Adicionar tag e remover tag
  5. Clique em Adicionar tag de nome a tag (nome da versão preferida do código)

    etapa 3

  6. Se você deseja enviar o TAG por controle remoto, ao criar o TAG ref: etapa 5, que fornece a caixa de seleção, pressione TAG para a origem, verifique-a e a tag push aparece no repositório remoto

  7. No caso de criar o TAG, caso você tenha esquecido de marcar a caixa Push to origin , você poderá fazê-lo mais tarde clicando com o botão direito do mouse no TAG criado, clique em Push to origin. insira a descrição da imagem aqui


2
Esta resposta explica como criar uma tag local usando o Sourcetree, mas a questão é sobre como enviar a tag para o repositório remoto (neste caso, o GitHub). Você diz para fazer isso na etapa 6, mas deixou de fora as instruções para isso.
Rory O'Kane

@ RoryO'Kane verifique agora eu atualizei a minha resposta, Obrigado por apontar para fora
Suresh Maidaragi

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.