git回退版本
真实测试案例:
1、可以通过git log查看当前版本指向
2、然后 git reset --hard HEAD~1(也可以是其他退回语句) 退回一个版本
3、可以通过git log再次查看,指向应该变为上一个版本了
4、直接git push origin 分支 --force强推,因为就算commit也会提示让你pull代码,这是不行的
其实两步就可以完成:第一步:退回版本,第二步:强推上去就可以了
一、git reset退回指令分为两种
1、git reset --soft
表示只是改变了HEAD的指向,本地代码不会变化,我们使用git status依然可以看到,同时也可以git commit提交
2、git reset --hard
表示改变HEAD指向的时候,同时改变本地源码,不仅仅指向变化了,代码也回到了那个版本时的代码
二、两者的语法一样:
(1)HEAD相当与当前、HEAD~1 退回上一个版本、HEAD~2 退回上两个版本、、、以次类推
git reset --hard HEAD~1 /或者/ git reset --soft HEAD~1
(2)通过版本号进行退回指定版本, git log 或者 git reflog 可以查看当前的版本指向和版本号
git reset --hard 版本号 /或者/ git reset --soft 版本号
三、退回之后:
1、如果使用--soft回退的
(1)使用git log或git reflog验证下,可以看到HEAD已经指向上一个commits了
(2)再使用git status看看,发现代码还在缓存区中
这时候就好办了,我们选择很多,可以直接修改代码,再commit,也可以取消git add 命令
2、如果使用--hard回退
这时候需要直接commit,推送到远程库中就行
(push推送,改变远程仓库的版本时,会因为版本差异问题而无法推送,
使用指令: git push origin 分支 --force 强制推送至远程分支,就大功告成)
注意:1、两者退回后只是改变的本地,无法影响远程库,需要push到远程库
2、回退后因为远程库中未改变,拉取代码时会拉取最新代码覆盖本地
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!