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

git撤回commit

最常见的几种撤回方式

目标使用命令是否保留修改
撤回最后一次 commit,但保留代码修改git reset --soft HEAD~1✅ 保留
撤回最后一次 commit,并丢弃修改git reset --hard HEAD~1❌ 丢弃
撤回某个 commit,但保留后续提交git revert <commit-id>✅ 保留历史
删除最近 N 次 commitgit reset --hard HEAD~N❌ 丢弃

常用示例

1. 撤回最近一次提交,保留代码改动

git reset --soft HEAD~1

 回到 git commit 之前,代码还是改过的,可以重新提交。


2. 撤回最近一次提交,并清空代码改动

git reset --hard HEAD~1

⚠️ 不可恢复! 会丢掉本地改动!


3. 撤回一个老的提交(保留后续提交)

git log         # 找到 commit-id
git revert abc123

生成一个“反向提交”来撤回 abc123,但不会影响后续提交,适用于已 push 的提交


❗注意事项

  • reset 适用于本地分支,不要对已 push 到远程的提交用 --hard,会让别人历史错乱

  • revert 安全用于任何场景,推荐撤回远程 commit。


  快速撤销 push 的提交(远程误提交)

git reset --hard HEAD~1
git push origin HEAD --force  # ⚠️ 谨慎使用,确保无人依赖

相关文章:

  • 流批一体向量化引擎Flex
  • 前端面试六之axios
  • 黑马教程强化day2-2
  • markdown文本转换时序图
  • 深入理解 TCP 套接字:Socket 编程入门教程
  • 数组方法_push()/pop()/数组方法_shift()/unshift()
  • 滚动—横向滚动时,如何直接滚动到对应的内容板块
  • `document.domain` API 的废弃与现代 Web 开发的转型
  • 从 8 秒到 1 秒:前端性能优化的 12 个关键操作
  • Maven 构建性能优化深度剖析:原理、策略与实践
  • CKA考试知识点分享(10)---NetworkPolicy
  • 深入浅出:C++深拷贝与浅拷贝
  • Web防火墙深度实战:从漏洞修补到CC攻击防御
  • 重拾前端基础知识:CSS预处理器
  • 基于AI智能体的医疗AI工具库构建路径分析
  • Python爬虫(54)Python数据治理全攻略:从爬虫清洗到NLP情感分析的实战演进
  • 第七章: SEO与渲染方式 三
  • C#接口代码记录
  • 第七章: SEO与渲染方式
  • Scrapy爬虫框架:数据采集的瑞士军刀(附实战避坑指南)!!!
  • 网站后期维护协议/精准推广引流5000客源
  • 怎么看网站建设有多久/苏州seo优化公司
  • 大型网站建设的主要问题/能打开任何网站浏览器
  • 三级分销最佳佣金比例/seo精准培训课程
  • 腾讯云建设网站视频/汕头网站关键词推广
  • 织梦网站还原/网站如何seo推广