前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git版本控制教程之为项目打上标签(二)

Git版本控制教程之为项目打上标签(二)

作者头像
游离于山间之上的Java爱好者
发布2022-12-19 11:32:12
3710
发布2022-12-19 11:32:12
举报
文章被收录于专栏:你我杂志刊你我杂志刊

本文首发于个人博客 https://qiucode.cn/article/107

可点击文末 【阅读原文】即可到达 【秋码记录】博客!

1、列出标签

首先先列出当前项目的已有标签。

代码语言:javascript
复制
git tag

你也可以按照特定的模式查找标签。例如,Git 自身的源代码仓库包含标签的数量超过 500 个。如果只对 1.8.5 系列感兴趣

代码语言:javascript
复制
git tag -l "v1.8.5*"  # 按照通配符列出标签需要 -l 或 --list 选项

2、创建标签

代码语言:javascript
复制
git tag -a v0.0.1 -m "初始版本 0.0.1"

显示 v0.0.1标签与之对应的提交信息

代码语言:javascript
复制
git show v0.0.1

3、后续打标签

对已经提交过的版本但还未有标签的,也可创建标签

代码语言:javascript
复制
git log --pretty=oneline
代码语言:javascript
复制
git tag -a v0.0.0.1 309bc6f # 309bc6f 是 SHA-1字符串前7个字符

4、推送标签到远程仓库

默认情况下,git push 命令并不会传送标签到远程仓库服务器上。在创建完标签后你必须显式地推送标签到共享服务器上。这个过程就像共享远程分支一样——你可以运行 git push origin <tagname>

代码语言:javascript
复制
git push origin v0.0.0.1

可以看到远程库上面没有任何标签,在推送远程库之后,刷新页面。

如果想要一次性推送很多标签,也可以使用带有 --tags 选项的 git push 命令。这将会把所有不在远程仓库服务器上的标签全部传送到那里。

代码语言:javascript
复制
git push origin --tags

5、删除标签

有时候需要删除本地仓库的标签,可以使用git tag -d <tagname>

代码语言:javascript
复制
git tag -d v0.0.0.2

当然你在执行以上命令后,并未删除远程库对应的标签,需使用git push <remote> :refs/tags/<tagname>来更新远程库。

代码语言:javascript
复制
git push origin :refs/tags/v0.0.0.2

其实还有一种方法更为直观的删除远程库标签

代码语言:javascript
复制
git push origin --delete v0.0.0.2

6、检出标签(不建议这么做)

如果你想查看某个标签所指向的文件版本,可以使用 git checkout 命令, 虽然这会使你的仓库处于分离头指针(detached HEAD)的状态——这个状态有些不好的副作用: 在分离头指针状态下,如果你做了某些更改然后提交它们,标签不会发生变化, 但你的新提交将不属于任何分支,并且将无法访问,除非通过确切的提交哈希才能访问。因此,如果你需要进行更改,比如你要修复旧版本中的错误,那么通常需要创建一个新分支:

敬请期待下一篇 git分支

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 你我杂志刊 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档