1
resposta

como atualizar a tag

**
SAMSUNG@LAPTOP-NOJ76PIJ MINGW64 /c/alura/index.html (master)
$ git tag -a v0.1.0 -m'laçando a primeira versão (beta) da aplicção de comados git'.

SAMSUNG@LAPTOP-NOJ76PIJ MINGW64 /c/alura/index.html (master)
$ git tag
v0.1.0

SAMSUNG@LAPTOP-NOJ76PIJ MINGW64 /c/alura/index.html (master)
$ git push apredendo_git v0.1.0
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (7/7), 766 bytes | 255.00 KiB/s, done.
Total 7 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 1 local object.
To https://github.com/matrixsly/apredendo-a-mexe-no-git.git
 * [new tag]         v0.1.0 -> v0.1.0

**
1 resposta

Oi, Alex, tudo bem?

Peço desculpas pela demora em te responder!

Podemos pensar na atualização da tag de duas maneiras. A primeira delas diz respeito a alterações no conteúdo da tag que se tornaram mais atuais. Já a segunda diz respeito a atualizar o nome da tag. Cada uma das possibilidades de lidar com as tags irá exigir um procedimento diferente.

Primeiro Caso: Atualizar o conteúdo da tag

O procedimento para atualizar o conteúdo da tag no repositório local consiste em:

Usaremos o comando git log --oneline para ver todos os commits realizados. Suponhamos que eu queira atualizar a tag que está no commit "Adicionando projeto".

Recorte de captura de tela colorida do Git Bash mostrando  o endereço da pasta do repositório seguido do nome da ramificação. Na linha abaixo há o comando git log --oneline seguido pelo commit que apresenta os dizeres: 0a1fd14 (HEAD -> main, tag: v1.0) Adicionando projeto emoldurado por um retângulo rosa.

Realizaremos a atualização do arquivo que deseja modificar e seguiremos com os comandos git adde git commit.

Recorte de captura de tela colorida do Git Bash mostrando  o endereço da pasta do repositório seguido do nome da ramificação. Na linha abaixo há o comando git status e na sequência  arquivo index.html aparece em vermelho com mais alguns dizeres, que dizem que o arquivo foi modificado. Na linha debaixo novamente aparece  o endereço da pasta do repositório seguido do nome da ramificação e na linha debaixo é usado o comando git add. Na linha abaixo o endereço da pasta do repositório bem como o nome da ramificação aparecem e na linha seguinte é usado o comando git commit seguido da mensagem de sucesso ao realizar o commit.

Novamente usaremos o comando git log --onelinepara verificar a hash (número que identifica os commits realizados) do commit para o qual aquela tag será atualizada. No caso do meu exemplo o commit tem a hash simplificada, descrita pelo código "4736e13".

Recorte de captura de tela colorida do Git Bash mostrando o endereço da pasta do repositório seguido do nome da ramificação. Na linha abaixo há o comando git log --oneline seguido por dois commits, sendo que a hash do primeiro está com uma moldura rosa.

Por fim, executamos o seguinte comando:

git tag -f <nome da tag> <código da hash do commit para o qual a tag será atualizada>

No meu caso, quero alterar a tag "v1.0" para o commit com a hash "4736e13", desse modo o comando ficará assim:

git tag -f v1.0 4736e13 

Caso você queira atualizar a tag em um repositório remoto será necessário utilizar um comando que force a atualização, pois fazendo um push sem a cláusula -f (--force), pode impedir que o conteúdo seja atualizado, portanto, usaremos o comando:

git push --force <nome do repositório remoto> < nome da tag>

Um exemplo, seguindo enviar a atualização da tag "v1.0" para o meu repositório remoto "origin", dessa forma o comando seria executado da seguinte maneira:

git push --force origin v1.0

Segundo Caso: Atualizar o nome da tag

Renomear uma tag no Git em um repositório local envolve criar uma nova tag e excluir a antiga. Para isso criaremos uma nova tag por meio do comando:

git tag < nome da nova tag> < nome da tag antiga>

Este comando substitui a tag antiga pela nova. Por exemplo, quero modificar o nome da tag "v1.0" para "v2.0", logo a sintaxe do comando ficaria:

git tag v2.0 v1.0

Para atualizarmos o nome da tag em um repositório remoto, podemos usar o seguinte comando:

git push origin <nome da nova tag> :<nome da tag antiga>

Note que os dois pontos (:), presente no código acima, ficam mais próximos da tag antiga e são usados para substituir o nome da tag antiga pelo da atual.

Seguindo o mesmo exemplo apresentado para renomear a tag no repositório local, no meu caso, usaria o seguinte comando para enviar as alterações de nomenclatura da tag para o repositório remoto:

git push origin v2.0 :v1.0

Caso queira se aprofundar ainda mais sobre as possibilidades do comando git tag, recomendo o artigo abaixo, onde você aprenderá sobre outros recursos desse comando:

Espero ter ajudado e caso tenha dúvidas estarei à disposição!

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!