Git的标签
标签
Git的标签是版本库的快照,它指向某个commit的指针(分支可以移动,标签不能移动)。作用是简化commit id
。
创建标签
- 在切换到需要打标签的分支后,执行
git tag <name>
命令即可创建标签,默认标签是打在最新提交的commit上的。 - 可以找到历史提交的
commit_id
,然后执行git tag <name> <commit_id>
打上标签。 还可以创建带有说明的标签
git tag -a <tag_name> -m info <commit_id>
,用-a指定标签名,-m指定说明文字:
eg:E:\Git>git tag v2.0
E:\Git>git tag v1.0 096c814
E:\Git>git tag -a v3.0 -m “version 0.1 released” 3628164
执行git tag
命令可查看标签。
eg:
E:\Git>git tag
tag v1.0
tag v2.0
注:标签不是按时间顺序列出,而是按字母排序的。
执行git show <tag_name>
可以查看具体的标签对应的信息(类似log
)。
操作标签
删除标签可执行git tab -d <tag_name>
创建的标签都只存储在本地,不会自动推送到远程。所以推送某个标签要执行git push origin <tag_name>
。
一次性推送全部尚未推送到远程的本地标签,执行git push origin --tag
如果标签已经推送到远程,想要删除标签,就得先在本地上删除,再执行git push origin :refs/tags/<tagname>
删除远程库的远程标签。
eg:
E:\Git>git tab -d v2.0
E:\Git>git push origin :refs/tags/v0.9
总结:
普通创建标签:
git tab <tag_name>
根据
commit_id
创建标签:git tab <tag_name> <commit_id>
创建标签时附加信息:
git tab -a <tag_name> -m info <commit_id>
查询标签列表:
git tag
查询具体标签信息:
git show <tag_name>
删除标签:
git tag -d <tag_name>
推送某一个标签到远程库:
git push origin <tag_name>
推送全部标签到远程库:
git push origin --tag
删除远程库的标签:首先本地删除,在执行
git push origin :refs/tags/<tag_name>