Git标签操作


Git标签操作

标记操作允许为存储库中的特定版本提供有意义的名称。假设Tom和Jerry决定标记他们的项目代码,以便以后可以轻松访问它。

创建标签

让我们使用 git tag 命令标记当前的HEAD 。Tom使用-a选项提供标记名称,并使用-m选项提供标记消息。

tom@CentOS project]$ pwd
/home/tom/top_repo/project

[tom@CentOS project]$ git tag -a 'Release_1_0' -m 'Tagged basic string operation code' HEAD

如果要标记特定提交,请使用相应的COMMIT ID而不是HEAD指针。Tom使用以下命令将标记推送到远程存储库。

[tom@CentOS project]$ git push origin tag Release_1_0

上面的命令将产生以下结果:

Counting objects: 1, done.
Writing objects: 100% (1/1), 183 bytes, done.
Total 1 (delta 0), reused 0 (delta 0)
To gituser@git.server.com:project.git
* [new tag]
Release_1_0 −> Release_1_0

查看标签

Tom创造了标签。现在,Jerry可以使用带-l选项的Git标记命令查看所有可用标记。

[jerry@CentOS src]$ pwd
/home/jerry/jerry_repo/project/src

[jerry@CentOS 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.

[jerry@CentOS src]$ git tag -l
Release_1_0

Jerry使用Git show命令后跟其标记名称来查看有关标记的更多详细信息。

[jerry@CentOS src]$ git show Release_1_0

上面的命令将产生以下结果:

tag Release_1_0
Tagger: Tom Cat <tom@codingdict.com>
Date: Wed Sep 11 13:45:54 2013 +0530

Tagged basic string operation code


commit 577647211ed44fe2ae479427a0668a4f12ed71a1
Author: Tom Cat <tom@codingdict.com>
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

删除标签

Tom使用以下命令从本地和远程存储库中删除标记。

[tom@CentOS project]$ git tag
Release_1_0

[tom@CentOS project]$ git tag -d Release_1_0
Deleted tag 'Release_1_0' (was 0f81ff4)
# Remove tag from remote repository.

[tom@CentOS project]$ git push origin :Release_1_0
To gituser@git.server.com:project.git
- [deleted]
Release_1_0