Git - operação de tag
A operação de tag permite dar nomes significativos a uma versão específica no repositório. Suponha que Tom e Jerry decidam marcar seu código de projeto para que possam acessá-lo facilmente mais tarde.
Criar Tags
Vamos marcar o HEAD atual usando o git tagcomando. Tom fornece um nome de tag com a opção -a e uma mensagem de tag com a opção –m.
[email protected] project]$ pwd
/home/tom/top_repo/project
[[email protected] project]$ git tag -a 'Release_1_0' -m 'Tagged basic string operation code' HEAD
Se você quiser marcar um commit em particular, use o COMMIT ID apropriado ao invés do ponteiro HEAD. Tom usa o seguinte comando para enviar a tag para o repositório remoto.
[[email protected] project]$ git push origin tag Release_1_0
O comando acima produzirá o seguinte resultado -
Counting objects: 1, done.
Writing objects: 100% (1/1), 183 bytes, done.
Total 1 (delta 0), reused 0 (delta 0)
To [email protected]:project.git
* [new tag]
Release_1_0 −> Release_1_0
Ver Tags
Tom criou tags. Agora, Jerry pode visualizar todas as tags disponíveis usando o comando Git tag com a opção –l.
[[email protected] src]$ pwd
/home/jerry/jerry_repo/project/src
[[email protected] src]$ git pull
remote: Counting objects: 1, done.
remote: Total 1 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (1/1), done.
From git.server.com:project
* [new tag]
Release_1_0 −> Release_1_0
Current branch master is up to date.
[[email protected] src]$ git tag -l
Release_1_0
Jerry usa o comando show Git seguido de seu nome de tag para ver mais detalhes sobre a tag.
[[email protected] src]$ git show Release_1_0
O comando acima produzirá o seguinte resultado -
tag Release_1_0
Tagger: Tom Cat <[email protected]>
Date: Wed Sep 11 13:45:54 2013 +0530
Tagged basic string operation code
commit 577647211ed44fe2ae479427a0668a4f12ed71a1
Author: Tom Cat <[email protected]>
Date: Wed Sep 11 10:21:20 2013 +0530
Removed executable binary
diff --git a/src/string_operations b/src/string_operations
deleted file mode 100755
index 654004b..0000000
Binary files a/src/string_operations and /dev/null differ
Excluir Tags
Tom usa o seguinte comando para excluir tags do repositório local e também remoto.
[[email protected] project]$ git tag
Release_1_0
[[email protected] project]$ git tag -d Release_1_0
Deleted tag 'Release_1_0' (was 0f81ff4)
# Remove tag from remote repository.
[[email protected] project]$ git push origin :Release_1_0
To [email protected]:project.git
- [deleted]
Release_1_0