列出标签

# 默认按字母排序显示
$ git tag

# 模糊匹配查找标签
$ git tag -l "v1.8.5*"
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

创建标签

# 创建附注标签
$ git tag -a v1.4 -m "my version 1.4"

$ git show v1.4
tag v1.4
Tagger: Ben StraubDate:   Sat May 3 20:19:12 2014 -0700

my version 1.4

commit ca82a6dff817ec66f44342007202690a93763949
Author: Scott ChaconDate:   Mon Mar 17 21:52:11 2008 -0700

    changed the version number
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
# 创建简单标签
$ git tag v1.4-lw

$ git show v1.4-lw
commit ca82a6dff817ec66f44342007202690a93763949
Author: Scott ChaconDate:   Mon Mar 17 21:52:11 2008 -0700

    changed the version number
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
# 给某个提交创建标签
$ git tag -a v1.2 9fceb02
  • 1.
  • 2.

推送标签

默认情况下,git push 命令不会传送标签到远程仓库服务器上。 在创建完标签后必须显式地推送标签到远程仓库上。

# 推送单个标签
$ git push origin v1.4-lw

# 推送所有标签
$ git push origin --tags
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

删除标签

# 删除本地标签
$ git tag -d v1.4-lw

# 删除远程标签方式一
$ git push origin :refs/tags/v1.4-lw

# 删除远程标签方式二
$ git push origin --delete
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

检出标签

注意不要在检出标签后做修改和提交,会出现不必要的麻烦。正确的做法应该是创建一个新的分支,在新的分支上做修改和提交。

$ git checkout v1.4
  • 1.