git撤销、回退某个commit的修改

文章目录

    • 撤销某个特定的commit
      • [方法 1:使用 `git revert`](#方法 1:使用 git revert)
      • [方法 2:使用 `git rebase -i`](#方法 2:使用 git rebase -i)
      • [方法 3:使用 `git reset`](#方法 3:使用 git reset)

撤销某个特定的commit

如果你要撤销某个很早之前的 commit,比如 7461f745cfd58496554bd672d52efa8b1ccf0b42,可以通过以下几种方法来实现:

方法 1:使用 git revert

git revert 会生成一个新的 commit 来撤销指定的 commit,而不会影响之后的 commit 历史。可以使用以下命令:

bash 复制代码
git revert 7461f745cfd58496554bd672d52efa8b1ccf0b42

这会生成一个新的 commit,撤销 7461f745cfd58496554bd672d52efa8b1ccf0b42 中的改动,但不会影响之后的 commit 历史。

方法 2:使用 git rebase -i

git rebase -i 适用于对历史 commit 进行更改或删除。注意这种方式会改变历史,因此在共享分支上操作时需谨慎。

  1. 运行以下命令以交互模式重写历史:

    bash 复制代码
    git rebase -i 7461f745cfd58496554bd672d52efa8b1ccf0b42^
  2. 在编辑器中找到 7461f745cfd58496554bd672d52efa8b1ccf0b42 的那一行,把它前面的 pick 改为 drop,然后保存并退出。

  3. 之后,Git 会重新应用后续的 commit。若遇到冲突,按提示解决冲突并继续执行 git rebase --continue

方法 3:使用 git reset

如果你要直接"回到"该 commit 之前的状态,而不需要之后的更改,可以使用 git reset,但注意这种方法会直接修改分支的历史记录,适用于非共享分支。

bash 复制代码
git reset --hard 7461f745cfd58496554bd672d52efa8b1ccf0b42

这会将分支的状态直接重置到 7461f745cfd58496554bd672d52efa8b1ccf0b42。但是所有在该 commit 之后的 commit 都会被删除,无法恢复。

总结来说,推荐的修复方法是使用 POSIX 兼容的 = 比较符来确保脚本能在更多的环境中运行。


结束语

Flutter是一个由Google开发的开源UI工具包,它可以让您在不同平台上创建高质量、美观的应用程序,而无需编写大量平台特定的代码。我将学习和深入研究Flutter的方方面面。从基础知识到高级技巧,从UI设计到性能优化,欢饮关注一起讨论学习,共同进入Flutter的精彩世界!

相关推荐
Wpa.wk31 分钟前
Git日志+分支管理+基础冲突解决
经验分享·git·测试工具
香水5只用六神8 小时前
【DMA】存储器到外设模式实验2
c语言·git·stm32·单片机·嵌入式硬件·github·visual studio
★浅_忆8 小时前
Git入门基础命令
git
待什么青丝9 小时前
同步 Git 仓库修改操作指南
git
Penguido9 小时前
解决 VS Code 中 Git 推送报错:ECONNREFUSED vscode-git.sock 与鉴权失败
linux·git·vscode
无限进步_10 小时前
【C++】只出现一次的数字 III:位运算的巧妙应用
数据结构·c++·git·算法·leetcode·github·visual studio
降临-max10 小时前
Git 从入门到进阶:基础命令与多分支
git
float_六七11 小时前
Git忽略规则终极指南
大数据·git·elasticsearch
无限进步_12 小时前
深入解析vector:一个完整的C++动态数组实现
c语言·开发语言·c++·windows·git·github·visual studio
Codeking__12 小时前
git常用命令小总结
git