Git基础篇(十一)——Git标签管理

前言:
  为了更方便的对提交进行操作,可以使用Tag,使用它将使得版本迭代关系更清晰,对比较的操作更便捷。

1 Tag有什么用?

  每个提交都有一个唯一的Hash值与其一一对应,但这是难以记忆的,我们可以给某个提交取“别名”,这样便于区分记忆,也能通过“别名“对该提交进行操作。

2 Tag创建

  为当前提交创建一个Tag可以使用指令git tag

1
git tag <tagname>

&emsp;&emsp;如果要给过去的提交追加Tag,可以在末尾指定提交的Hash值。

1
git tag <tagname> <hash ID>

&emsp;&emsp;当前分支添加标签,但此种形式不不会为标签添加注释。如果要新建标签且为标签添加注释可以使用 -a 参数,加上 -m 参数可以在不进入vi模式下进行注释编辑。

1
git tag -a <tagname> -m "comment"

&emsp;&emsp;同样的,如果要给过去的提交追加Tag,可以在末尾指定提交的Hash值。

1
git tag -a <tagname> -m "comment" <hash ID>

3 Tag查看

&emsp;&emsp;查看所有标签,默认按字母顺序排列。

1
git tag

&emsp;&emsp;但上面这条指令不会显示Tag的注释信息,如果想要显示注释信息则可使用 -n 参数。

1
git tag -n

4 查找Tag

&emsp;&emsp;模糊查找Tag,可以使用通配符进行匹配,使用指令 -l

1
git tag -l "v1.*"

5 将Tag推动到远程

&emsp;&emsp;默认情况下在本地创建的Tag不会同步到远程服务器上,如果需要推送到远程,必须在本地创建完成后推送到远程仓库上。
&emsp;&emsp;将单个标签推送到远程仓库。

1
git push origin <tagname>

&emsp;&emsp;将所有标签推送到远程服仓库。

1
git push origin --tags

6 删除本地Tag

&emsp;&emsp;通过使用指令 -d 可以指定要删除Tag。

1
git tag -d <tagname>

7 删除远程Tag

&emsp;&emsp;将远程仓库的某个标签删除,有两种方式。

1
git push origin --delete <tagname>
1
git push origin :refs/tags/tagname