首页 / GIT / git入门(三):git标签操作
git入门(三):git标签操作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了git入门(三):git标签操作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1529字,纯文字阅读大概需要3分钟。
内容图文
git标签操作
概念:
像其它版本操作系统一样,git可以给历史某个提交打上标签,以示重要。比较有代表性的是人们使用标签来标记发布节点例如v1.0 v1.2等。标签是指某个分支的某个特定时间点状态,通过标签可以很方便的切换到标签标记时分支对应的状态。
重点:标签是与commit对应的,对应到具体的某一次commit。而且仅仅与commit相关,下面的示例中会体现到。
标签操作需要掌握的基础命令
- 创建标签
- 列出已有标签
- 将标签推送至远程仓库
- 检出标签
- 删除标签
创建标签、查询已有标签
git tag tagname
git tag
验证标签与分支的关联性,在master分支创建的标签在其它分支不可见???本地其它分支竟然能够看到master分支创建的标签
通过git log查看历史记录发现,其它分支之所以能够查看master分支创建的tag是因为这些分支都是从master当前commit状态新建的分支,tag是和commit id关联,其它分支有这个commit记录就会查询到这个commit对应的tag。从这点来说tag是全局的tag,只要分支有这个commit就能看到tag,与分支以及tag创建的先后顺序无关。
local_branch1相比master有更新的commit记录,如果在此分支创建tag应当与最新的commit关联。由于master没有这个commit所以应该看不到这个标签。下面进行验证
验证情况与预期有出入:master上git tag能够看到这个标签,但是git show tagname查看详情,这个tag关联的分支没有master
创建、查询标签总结:
- 哪个分支创建的标签默认与最近一次commit关联
- 所有分支git tag能够查询到所有的tag信息,即使这个tag关联的commit不是当前分支的commit
将标签推送至远程仓库
- push带标签的commit id到远程仓库会自动push标签吗?
以local_branch_b1分支为例,对本地仓库做更新,commit后再push。 push本地带tag的代码到远程仓库并不会将tag push到远程仓库
- push tag到远程仓库
git push remote_repo_localname localtagname
检出标签
检出标签一般是从标签标记的代码状态开辟新分支
- 这里的tag是本地还是远程的tag,从标签检出的新分支会不会带默认tag?
下面示例中master_v1.0tag没有push到远程仓库,git使用下面命令是从本地仓库检出tag创建新分支,tag检出后远程也没有对应的分支与之建立追踪关系。
git checkout -b [localbranchname] [tagname]
- 本地没有的标签如何从远程仓库检出
如果远程标签所在分支与本地分支已有追踪关系直接pull代码后有会带tag吗?带tag直接在本地检出对应tag 在local_branch_b1分支实验,这个分支有所有commit的提交
实验证明这种方法可以操作
如果远程标签所在分支与本地分支没有追踪关系,直接拉取分支到本地然后再本地检出tag
删除tag
git tag -d tagname
删除本地tag,即使当前分支没有该tag对应的commit也能删除成功
git push remote_repo_localname :refs/tags/remotetagname 删除远程仓库tag
删除前
删除操作
删除后
原文:https://www.cnblogs.com/flags-blog/p/14825109.html
内容总结
以上是互联网集市为您收集整理的git入门(三):git标签操作全部内容,希望文章能够帮你解决git入门(三):git标签操作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。