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

git操作修改历史版本指定tag标签的代码,并发布新标签

场景:

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

操作流程如下:

  1. 列出所有标签

    $ git tag
    0.0.1
    0.0.2
    0.0.3
    
  2. 发现0.0.1标签时的历史版本代码出现了问题,针对0.0.1标签时的代码建一个用于紧急处理bug的分支

    # 新建一个分支,指向某个tag
    $ git checkout -b [branch] [tag]
    
    $ git checkout -b feature-bugfix-0.0.1 0.0.1
    Switched to a new branch 'feature-bugfix-0.0.1'
    
  3. 在feature-bugfix-0.0.1分支上处理完bug,再打一个新标签为0.0.1-bugfix

    $ git tag 0.0.1-bugfix
    
  4. 推送0.0.1-bugfix新标签到远程仓库

    $ git push --tags
    

    此时可以基于0.0.1-bugfix标签发布新版本

  5. 将feature-bugfix-0.0.1分支合并到主分支

    # 先切换到master主分支
    $ git checkout master
    # 合并feature-bugfix-0.0.1分支
    $ git merge feature-bugfix-0.0.1
    # 推送到远程仓库
    $ git push 
    
  6. 清理本地分支

    $ git branch -D feature-bugfix-0.0.1
    
http://www.lryc.cn/news/22659.html

相关文章:

  • SpringMVC——响应处理(1)【包含源码分析】
  • Normalization
  • 27K测试老鸟分享自己6年面试心得,四种公司、四种问题…
  • 中小企业数字化自动化转型的方法
  • 利用GPT-3 Fine-tunes训练专属语言模型
  • kubeadm方式安装k8s高可用集群(版本1.26x)
  • 分享5款堪称神器的免费软件,建议先收藏再下载
  • 【项目实战】从0开始入门JDK源码 - LinkedList源码
  • Polygon zkEVM的gas定价
  • stl中的智能指针类详解
  • Linux 阻塞和非阻塞 IO 实验
  • 你要的react+ts最佳实践指南
  • 软件测试人员会被替代吗?IT行业哪个方向的前景最好?字节12年测开是这样说的
  • 十六、vue3.0之富文本编辑器的选择
  • kafka(一) 的架构,各概念
  • 【ts的常用类型】
  • Hyper-V与安卓模拟器不共存
  • 【图像分类】卷积神经网络之ZFNet网络模型结构详解
  • 亿级高并发电商项目-- 实战篇 --万达商城项目 十三(编写购物车、优化修改商品、下架商品方法、购物车模块监听修改商品、删除商品消息)
  • springboot 虚拟线程demo
  • CTFer成长之路之逻辑漏洞
  • 入门力扣自学笔记238 C++ (题目编号:1144)
  • 蓝桥杯-寒假作业
  • 测试用例篇
  • 自动驾驶自主避障概况
  • Python实用的库排名…
  • 【YOLO系列】YOLOv4论文超详细解读1(翻译 +学习笔记)
  • 【神经网络】Transformer基础问答
  • 制定防火墙策略的步骤和建议
  • 新必应(New Bing)国内申请与使用教程