git如何从某个分支的指定历史版本中创建新分支

 更新时间:2023年05月26日 10:07:07   作者:YadingLee  
这篇文章主要介绍了git如何从某个分支的指定历史版本中创建新分支问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

git从某个分支的指定历史版本中创建新分支

有时候,我们在一个分支上做了许多修改,而这些修改因即将上线等原因不可修改。

而现在有一个新任务,需要在这个分支的这些修改之前进行开发。

方案①(不推荐):在这些分支上撤销这些修改的内容,再进行开发 

方案②(推荐):从当前分支的某个历史版本中切出新的分支进行开发

具体操作

1.查看历史版本

git log

2.从提交的某个历史版本中切出新分支

比如:从切到测试环境(780e2a7fc714faf388ba71)这个历史节点切出

git checkout -b new-branch 780e2a7fc714faf388ba71

经过以上步骤,您已经从指定分支的指定历史版本创建出了一个新分支

git在某个节点切出新分支

操作前,必须先备份分支,避免丢失代码!!!!

 操作前,必须先备份分支,避免丢失代码!!!!  

操作前,必须先备份分支,避免丢失代码!!!!

找到节点编号

使用 git log 命令查看提交记录

或者使用IDEA找提交记录

从当前提交 HEAD 指针创建一个临时未命名分支

git chekcout 91d38bf2

这个时候只是从这个节点创建了一个临时未命名分支,

如果你这个时候切换到别得分支,那么你就相当于放弃了这个未命名分支

把临时分支保留的提交创建成新分支

git switch -c 2023-0306-dev

成功从develop 的 head: 91d38bf2(某次提交) 切出一个新的分支

推送到远程并与远程的2023-0306-dev关联 (若没有远程分支创建并关联)

git push -u origin 2023-0306-dev

应用场景

合并错误分支 

需要发布某一节点的分支

紧急发布        

  • 开发过程中,本次代码已经全部合并到dev(测试中待发布状态)
  • 这时有个紧急bug需要修复,但是不能把本待发布的版本发上去
  • 找到上次发布节点,切出新分支,更改bug,快速发布

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用noopener和noreferrer让HTML中的外部链接更安全

    使用noopener和noreferrer让HTML中的外部链接更安全

    在跳转时,不再把“从哪个页面来的”这个信息, 通过 HTTP Referer 头部传给目标站点,你以为你只是好心把外链丢到新标签页, 结果人家顺着这条“绳子”,直接把你的原页面拖走了,使用noopener和noreferrer可以让HTML中的外部链接更安全
    2025-12-12
  • 编程人员阅读代码的一些小技巧分享

    编程人员阅读代码的一些小技巧分享

    阅读别人的代码作为研发人员是一件经常要做的事情。一个是学习新的编程语言的时候通过阅读别人的代码是个最佳的学习方法,另外是积累编程经验。
    2011-01-01
  • 在Git中撤消更改的六种方法总结

    在Git中撤消更改的六种方法总结

    这篇文章主要介绍了Git中常用的6种撤消更改的方法,包括git amend、git reset、git rebase、git revert和git checkout等,通过这些命令,可以方便地处理项目代码管理中的错误操作或需求变更,需要的朋友可以参考下
    2024-12-12
  • 微信小程序里使用SVG矢量图标方法详解

    微信小程序里使用SVG矢量图标方法详解

    在微信小程序开发过程中需要在小程序里使用SVG矢量图标,下面为大家分享2种在微信小程序中引入SVG矢量图标的方法
    2018-10-10
  • 如何使用VSCode插件Remote-Tunnels连接服务器

    如何使用VSCode插件Remote-Tunnels连接服务器

    本文介绍使用Remote - Tunnels连接服务器,该方法需要远程服务器有流畅的网络环境,它使用微软的服务来建立隧道,需要登录GitHub,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • 如何将gitLab代码拉到本地

    如何将gitLab代码拉到本地

    这篇文章主要介绍了如何将gitLab代码拉到本地的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • URL 长度有限制吗?

    URL 长度有限制吗?

    众所周知, 传递小量参数(在没有其他原因,例如隐藏参数值的情况下)推荐使用GET方法,传递大量参数推荐使用POST方法。原因是什么呢?
    2009-06-06
  • Git进行版本控制的实战指南

    Git进行版本控制的实战指南

    Git是一种分布式版本控制系统,广泛应用于软件开发中,它可以记录和管理项目的历史修改,并支持多人协作开发,通过Git,开发者可以轻松地跟踪代码变更、合并分支、回退版本等操作,所以本文给大家详细介绍了Git版本控制的实战指南,需要的朋友可以参考下
    2025-09-09
  • 网站被等恶意镜像的解决、反制措施详细教程

    网站被等恶意镜像的解决、反制措施详细教程

    这篇文章主要介绍了网站被等恶意镜像的解决、反制措施详细教程,需要的朋友可以参考下
    2016-10-10
  • Git用户名与邮箱的配置指南

    Git用户名与邮箱的配置指南

    在使用 Git 进行版本控制时,每一次代码提交(commit)都会记录提交者的身份信息,这些信息不仅用于追踪代码变更历史,还在团队协作、代码审查和开源贡献中发挥着重要作用,所以本文介绍了Git 用户名与邮箱配置的详细指南,需要的朋友可以参考下
    2025-10-10

最新评论