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

相关推荐
1***y17812 小时前
Git在发布流程中的自动化标签
运维·git·自动化
逻辑棱镜18 小时前
Git 分支管理与提交信息规范 (v1.0)
git·github·团队开发·代码规范·敏捷流程
悦悦欧呐呐呐呐19 小时前
git 设置邮箱和用户名
git
正经教主20 小时前
【Git】Git06:Git 管理 Android 项目教程(含GitHub)
android·git
艾莉丝努力练剑1 天前
【Git:多人协作】Git多人协作实战:从同分支到多分支工作流
服务器·c++·人工智能·git·gitee·centos·项目管理
liuyao_xianhui1 天前
版本控制器git--gdb/cgdb
linux·运维·服务器·git
徐同保1 天前
如何使用GitKraken把git项目迁移到另一个平台,并保存所有提交记录,例如把github上的项目,迁移到gitee
git·gitee·github
高小秋2 天前
项目开发使用 git工作流插件 -- jgitflow开发实践
git
tealcwu2 天前
【软件工程】浅析Git message, version, changelog之间的关系
git
五号厂房2 天前
Git Worktree 使用指南
git