当前位置: 首页 > news >正文

Git标签的使用

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • Git标签使用
    • 1. 查看所有标签
    • 2.对当前提交打标签
    • 3. 对历史提交打标签
      • 3.1 查看提交历史
      • 3.2 根据commitId打标签
    • 4. 创建带有说明的标签
    • 5. 删除标签
    • 6. 推送标签到远程
      • 6.1 推送指定标签到远程
      • 6.2 推送所有标签到远程
    • 7. 删除标签
      • 7.1 本地删除
      • 7.2 远程删除
    • 8. 总结


Git相关文章参考:
Git学习和使用指南简单篇
Git学习和使用指南详细篇
Git命令汇总

Git标签使用

标签tag也是版本库的一个快照,在发布一个版本时可以打一个标签,确定该版本对应的打标签的时刻,未来可用该标签找到对应的版本进行恢复
标签实质上是指向某个commit的指针,但不可移动
tag和commit绑定在一起,更容易根据tag的内容(一般为版本号)找到对应的commit版本

1. 查看所有标签

查看所有标签名,该命令列出的标签列表不是按照时间顺序,而是根据字母书序排列

git tag

通过show查看指定标签

git show <tag-name>

如果查看标签v1.0的标签内容

git show v1.0

2.对当前提交打标签

默认情况下标签会打在最新提交的commit上
打标签

git tag <tag-name>

如创建标签v1.0

git tag v1.0

3. 对历史提交打标签

默认情况下标签会打在最新提交的commit上
如果忘记打标签,但时间已经过了,如何对以前的commit打标签?
指定commitid打标签

3.1 查看提交历史

查看提交历史,找到想要打标签的commitId

git log --pretty=online --abbrev-commit

3.2 根据commitId打标签

对指定的commitId打标签

git tag <tag-name> commitId

4. 创建带有说明的标签

-a参数指定标签名,-m参数指定描述文字
命令如下

git tag -a <tag-name> -m "tag-message"

git tag -a v1.0 -m "version 1.0 for test released"

使用git show <tag-name>查看标签内容包括描述信息
如果标签对应的commit既出现在master分支又出现在dev分支,则两个分支上都可以看到该标签

5. 删除标签

语法

git tag -d <tag-name>

git tag -d v1.0

6. 推送标签到远程

创建的标签只存在本地,不自动推送到远程,所以打错标签可本地安全删除

6.1 推送指定标签到远程

如需将标签推送到远程,则可用以下命令

git push origin <tag-name>

6.2 推送所有标签到远程

也可以一次性将所有标签全部推送到远程

git push origin --tags

7. 删除标签

若标签已推送到远程,现在想删除该标签,需要先从本地删除再从远程删除

7.1 本地删除

git tag -d <tag-name>

7.2 远程删除

git push origin :refs/tags/<tag-name>

8. 总结

推送一个本地标签到远程

git push origin <tag-name>

推送全部标签到远程

git push origin --tags

删除一个本地标签

git tag -d <tag-name>

删除一个远程标签

git push origin :refs/tags/<tag-name>

创建一个带描述的标签

git tag -a <tag-name> -m "messages"

创建一个带gpg签名的标签

git tag -s <tag-name> -m "messages"

感谢阅读,祝君暴富!

http://www.lryc.cn/news/358365.html

相关文章:

  • 【uni-app】Pinia 持久化
  • Flink 窗口
  • 基于大模型和RAG技术实现的开源项目
  • mac m1安装homebrew管理工具(brew命令)完整流程
  • Liunx学习随笔
  • mac中文件夹怎么显示.git隐藏文件
  • 【PB案例学习笔记】-13 徒手做个电子时钟
  • Java多线程——线程强制执行
  • 虹科Pico汽车示波器 | 免拆诊断案例 | 2017款奔驰E300L车行驶中发动机偶尔无法加速
  • 华发股份:加强业务协同 新政下项目热销
  • RedHat9网络配置设计
  • HDR视频相关标准-HDR vivid(二)
  • uniapp或微信小程序一些问题解决
  • 最长递增子序列,交错字符串
  • 力扣:344. 反转字符串
  • linux Inodes满导致数据库宕机
  • 【STL】C++ stack(栈) 基本使用
  • 轻量级 K8S 环境 安装minikube
  • 市场巨变,移动开发行业即将迎来“第二春”?
  • DependencyCheck工具使用
  • oracle翻页查询的小坑记录
  • 学习笔记——动态路由协议——OSPF(OSPF基本术语)
  • 子集和问题(回溯法)
  • 【NumPy】全面解析arange函数:高效创建数值范围数组
  • [ C++ ] 深入理解模板( 初 阶 )
  • UI自动化测试最佳设计模式POM
  • 朋友圈定时发送设置
  • Spark SQL 中DataFrame DSL的使用
  • qt 布局学习笔记
  • 设计模式复习