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

Git回到某个分支的某次提交

1.切换到需要操作的分支(<branch-name>是分支名称)。 命令如下:

git checkout <branch-name>

2.获取代码的提交记录 。命令如下:

git log

按q退出当前命令对话。

获取到某次提交或者合并的hash值(下文命令中的<commit-hash>)之后就能使用命令回退版本了。

 

要在Git中回到某个分支的某次提交,可以使用git reset命令。

使用git reset命令

1.‌硬回滚(Hard Reset)‌:这会丢弃自指定提交以来的所有更改,并将HEAD、索引和工作目录都移动到指定的提交。命令如下:

git reset --hard <commit-hash>

警告:硬回滚会丢弃所有未提交的更改,所以在执行此操作之前,请确保你已经保存了所有重要的工作‌。

2.‌混合回滚(Mixed Reset)‌:这会丢弃自指定提交以来的所有更改,并将HEAD和索引移动到指定的提交,但不会改变工作目录。命令如下:

git reset --mixed <commit-hash>

混合回滚与不带任何标志的git reset命令效果相同‌。

3.软回滚(Soft Reset)‌:这会将HEAD移动到指定的提交,但不会改变索引和工作目录。所有自指定提交以来的更改都会被保留为暂存的更改。命令如下:

git reset --soft <commit-hash>

比如git reset,同混合回滚:

 

强制推送到远程仓库

在本地回滚到某次提交后,如果需要将这些更改同步到远程仓库,可以使用以下命令:

git push -f

这里的-f参数表示强制推送,确保远程仓库的分支也更新到当前的提交状态‌。

使用git revert命令

另一种回到某次提交的方法是使用git revert命令。这个命令会创建一个新的提交来反转指定的提交,从而保留提交历史。命令如下:

git revert <commit-hash>

使用git revert可以保留提交历史,并且不会丢失任何未提交的更改‌。


http://www.kler.cn/a/396030.html

相关文章:

  • 服务器被挂马怎么办?——解决服务器被挂马的方法和步骤
  • 图像处理技术椒盐噪声
  • vue3: ref, reactive, readonly, shallowReactive
  • 从H264视频中获取宽、高、帧率、比特率等属性信息
  • python解析网页上的json数据落地到EXCEL
  • Linux 系统管理和监控命令---- auditctl命令
  • 【Node-Red】使用文件或相机拍摄实现图像识别
  • CSS盒子的定位> (下篇)#固定定位#笔记
  • Java基础知识03(内部类)【24.11.25】
  • nodejs和npm在gitbash中提示Not Found情况的解决办法
  • 嘉立创EDA 画PCB板子经验总结(二)
  • Windows系统 ElasticSearch,Kibana安装
  • 使用spring操作redis
  • idea使用技巧和推荐插件
  • 第六十四周周报 TCN-LSTM
  • SOLIDWORKS Toolbox:一键自动化,让紧固件与零部件管理更高效
  • WPF中Prism框架中 IContainerExtension 和 IRegionManager的作用
  • 什么是网络安全?网络安全包括哪几个方面?
  • ffmpeg视频编码
  • 物联网(RFID)全景:被装信息化监控应用与挑战
  • RA-L开源:Light-LOAM: 基于图匹配的轻量级激光雷达里程计和地图构建
  • Django中文教程
  • 大模型开发整体流程 基于个人知识库的问答助手 项目流程架构解析
  • QT6 QML vtk学习之(1)点云在QML窗口中显示
  • 深入理解UML用例图:概念、构成与应用实例
  • java瑞吉外卖