git标签的管理与思考

这篇具有很好参考价值的文章主要介绍了git标签的管理与思考。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

git 标签管理

git 如何打标签呢?

标签是什么?

标签 相当于一个 版本管理的一个贴纸,随时 可以通过标签 切换到 这个版本的状态 ,

有人可能有疑问 git commit 就可以知道 代码的改动了, 为啥还需要标签来管理呢?

首先 多人协作开发的时候,有很多commit 有时候会比较乱,而tag 一般完成了一个release, 并且测试通过后, 再去打个 标签。 代表一次上线功能的小小的里程碑。

注意标签 是不可以 像分支一样 可以移动的.一旦打完标签就意味着 这个版本确定下来, 如果发现了这个版本的bug ,要基于这个标签 创建分支 进行修复,而不能直接在某个标签进行修改代码.

标签和 commitID 的区别是什么呢?

标签 本质来说 和commitID 没有区别. 唯一的区别 标签是一个可以人类可以阅读的名称. commitID 是一个hash 值, 一般不是那么容易记住.

可以通过标签名称 检出分支, 当然也可以通过某个 commitID 检出分支. 标签的意义 就是针对某次commit 完成了一个产品相对完整的功能,或者优化, 或者准备好了一个即将可以发布的代码版本, 我们需要记录一下这个伟大的时刻, 仅此而已. 当然 你可以说, 我通过 commit 里面的message 也是 可以说明这个 重要的提交 git commit -m "release version" 当然是可以的,没有问题. 如果每个人都能有commit 信息的规范做法,那么 tag的作用 就不那么大. 然而在真实开发体验中, 很多commit message, 写的相对没有那么详细, 比如: fix a bug , Update xxx file, optimize code ,refactor code 等等 这些commit message. 会让代码的维护者头大,随着时间的推移, 都不知道哪个是重要的事件,或者里程碑. 这个时候 我们就需要 里程碑一样的东西, 就是对某个commitID 打标签, 标志这次这次完成了一个大的功能. 或者一次大版本测试,准备发布. 这就是 tag 存在的意义.

我来演示一下根据 tag 检出分支,以及根据 commitID 检出分支
git标签的管理与思考,GIT使用笔记,git,git tag

# 通过 tag 检出分支
git checkout -b b_2_0_tag  2.0.0  

# 通过commitID 检出分支
git checkout -b b_2_0  c1f2646

检出结果如下: 我们可以清晰的看到,两个分支 在同一个 commitID, 两者完全一样的.
git标签的管理与思考,GIT使用笔记,git,git tag

查看标签

git tag 
[xxxx@xxxxx xxxxx]$ git tag 
db_sharding_v0.1
db_sharding_v0.2
v20191126
v20191127
v20191127.1
v20191203
v20200119
v20200204
v20200206

支持 匹配查看标签

git tag  -l 'v2020*'
[ec2-user@10-181-160-142 history_retriever]$ git tag  -l 'v2020*'
v20200119
v20200204
v20200206

查看某一个标签的详情

git show 标签名称

git show v20200206

git标签的管理与思考,GIT使用笔记,git,git tag

打标签 并且 推送到 远程 共享标签

git tag -a 标签名称 -m comment 信息 ,message 一些描述信息

一般打标签都是针对当前的分支,最后一个提交

-a : 理解为 annotated 的首字符,表示 附注标签
-m : 指定附注信息

git tag -a v20200206 -m  "稳定版,release version" 

# 推送到远程 标签(共享标签)
git push origin v20200206

后期打标签

假设已经完成了某个feature 已经提交了代码,但是 忘记 打tag 了,可以通过 commit 进行打tag

# 查看提交历史
git log --pretty=oneline


# 一行显示 commit 信息 
git log    --oneline

[xxxxx@xxxxxx xxxxxx]$ git log --pretty=oneline
5f3f449120676310a581df86c3a58144a1da045d Merged PR 12558: test query string
3b34e0dd65fff220812a4f1858e20e1a3326b497 ut 排除
8a3a0428e4276d160c7ab220ecbf05357c17dd53 1
1892ad9d0d585bc56cd06f3c398e4b52bd902fe3 test query string
25fbee19721013c685df903cfca20517dcfea357 test query string
d6cef413a0cde8c0233ed5ff13f259bc76b9c688 Merged PR 12546: ut - rank task
0f633ea5cc0ba357b2c0cead9a1cd280c5c33a8f ut - rank task

根据 commitID 来打标签

git tag -a 标签名称 commitID

git tag -a v20200109.1  0f633ea

删除 本地标签

git tag -d 标签名称

git tag -d  v0.0.1

推送一个标签

git push origin 标签名称

git push origin v0.0.1

git标签的管理与思考,GIT使用笔记,git,git tag

推送本地所有的标签到远程仓库

git push origin --tags

删除远程仓库标签

git push origin :refs/tags/标签名

git push origin  :refs/tags/v0.0.1

git标签的管理与思考,GIT使用笔记,git,git tag

这个命令更加直观

 git push origin --delete <tagname>

通过标签检出一个分支

根据 标签 检出一个分支 branch_version3

git checkout -b 分支名 标签名

git checkout -b branch_version3  v3.0.0

参考链接

git-scm.com

git 标签管理文章来源地址https://www.toymoban.com/news/detail-791719.html

分享快乐,留住感动. '2023-12-09 15:27:05' --frank

到了这里,关于git标签的管理与思考的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git根据commitid创建tag标签

    1.首先,创建一个新的标签。你可以使用以下命令创建一个轻量级标签(lightweight tag): 针对当前标签而言 ,也就是你所在的当前分支而言 2.如果你想创建一个带注释的标签 针对当前标签而言 ,也就是你所在的当前分支而言 上面两个(1,2)是根据当前分支所创建的,下面这

    2024年02月05日
    浏览(68)
  • git操作修改历史版本指定tag标签的代码,并发布新标签

    当项目已经迭代多个版本之后,突然发现旧版本0.0.1出现了紧急bug,需要及时处理; 如果直接用新版本替换上去是存在极大隐患的,且时间来不及; 所以需要直接在0.0.1版本的基础上去修复bug,然后发布一个新版本去更新,这样才会更加稳妥,影响范围也会最小; 列出所有标

    2024年02月09日
    浏览(70)
  • Git 怎么使用?管理项目?冲突?命令汇总(git rebase、git reverse、git reset、git tag)——保姆及教程(持续更新)

    写在前面: 整理:CS_GUIDER,作者:阮一峰,原文链接:https://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 文章一般会优先在个人博客中更新,欢迎少爷们围观我的个人博客: https://wl2o2o.github.io/(点击即可访问) 推荐一个快速练习 Git 的宝藏网站——动图演示 Git 的命令逻辑。

    2024年02月03日
    浏览(48)
  • Git学习笔记:3 git tag命令

    git tag 是 Git 中用于管理和操作标签(tag)的命令。标签在Git中主要用于标记特定的提交,通常用来标识重要的版本发布点,如v1.0.0、v2.1.5等。 创建一个轻量标签(不包含额外信息): 创建一个带有注释的annotated标签(推荐使用,因为它可以存储更多元数据和PGP签名): 列出

    2024年01月25日
    浏览(41)
  • git 笔记/常见命令/as的fetch,pull ,update project的区别/标签管理

    头(HEAD)HEAD类似一个“指针”,指向当前活动 分支 的 最新版本。  就是在电脑里能看到的项目代码库目录,是我们搬砖的地方, 在这里我们可以新增文件、修改文件内容,或删除文件。 此时的项目代码库目录还是红色的(没有与git关联),未被git跟踪 此时的工作区的代码

    2024年02月06日
    浏览(49)
  • 【git、gerrit】git 使用tag

    常常为发布上线某个版本打上一个标签,表示这是什么版本,这样后续找起来就很方便。 如果没有标签只能通过commit历史去查找,而且commit版本显示的都是一串2dad2sdfa字符串。 tag操作本质是对某次commit进行额外的打标签,因此依附于某次commit ,甚至可以一一对应 首先要切换

    2024年02月05日
    浏览(37)
  • Git tag使用

    tag常被称作里程碑,发版Release时用到。 怎么添加tag? 问 : 刚修改完代码 还未 Commit 可以直接 git tag v2.4.6.1 -m \\\"[Update]更新proxy@379ac539\\\"吗? 答: 不可以, git tag 命令是用来给已经存在于 Git 历史中的提交打标签的。如果你刚刚修改了代码但还没有进行提交,那么这些更改尚未

    2024年01月20日
    浏览(42)
  • git 使用tag

    常常为发布上线某个版本打上一个标签,表示这是什么版本,这样后续找起来就很方便。 如果没有标签只能通过commit历史去查找,而且commit版本显示的都是一串2dad2sdfa字符串。 tag操作本质是对某次commit进行额外的打标签,因此依附于某次commit ,甚至可以一一对应 首先要切换

    2024年02月04日
    浏览(34)
  • Git 基础 - tag 的使用

    Git 的 tag 功能是一个非常有用的工具,它可以帮助开发者在代码仓库中标记重要的里程碑和版本号。 Tag 可以看作是一个快照,用于永久性地标记提交记录。它们通常用于发布新版本或里程碑,并且可以帮助开发者追踪项目的历史记录。Tag 在 Git 中是轻量级对象,不会像分支

    2024年02月04日
    浏览(39)
  • Git第十四讲 Git标签管理

    Git标签是用于标记项目中的特定版本的重要工具。它们通常用于标识发布版本或里程碑。本文将介绍如何在Git中创建、查看和管理标签。 要在Git中创建一个标签,可以使用 git tag 命令。有两种类型的标签:轻量标签和附注标签。 轻量标签 轻量标签是指向特定提交的静态引用

    2024年02月09日
    浏览(84)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包