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的精彩世界!

相关推荐
我是海飞13 分钟前
Git 本地仓库推送到远程空仓库指南
大数据·git·elasticsearch
记得开心一点嘛14 分钟前
如何去使用git进行协同开发?
git
GHL28427109010 小时前
git cherry-pick使用
git
小龙12 小时前
【Git 报错解决】本地分支与远程分支名称/提交历史不匹配
大数据·git·elasticsearch·github
阿正的梦工坊12 小时前
Git Rebase 是什么?为什么需要它?
人工智能·git
ASEpochs14 小时前
Vsocde中‘sh’不是内部或外部命令,也不是可运行的程序或批量处理文件--已解决
git·vscode·bash
coding消烦员14 小时前
在 Windows 内网搭建 Git 仓库:共享普通仓库 vs 中心 bare 仓库
windows·git
李@十一₂⁰15 小时前
git多分支管理
大数据·git·elasticsearch
爱写代码的派大星16 小时前
git 拉取和合并
git
Kp独立开发18 小时前
开源项目二次开发最佳实践:Fork + 分支隔离与同步
git·开源