You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅中止当前git cherry-pick操作 保留此前已完成的拣选结果

问题解答

能不能直接执行git push后checkout文件丢弃更改?

不能,原因如下:

  • 你当前处于cherry-pick冲突的中间状态,Git会直接拦截git push请求,根本无法完成推送。
  • 就算通过特殊参数绕过Git检查强行推送,后续checkout丢弃更改的操作很容易误删之前已经成功拣选的有效内容,还可能把工作区其他未备份的改动一起清掉,风险极高。

中止本次失败cherry-pick、保留之前所有拣选结果的方法

结合你贴出的git status输出判断,你之前的拣选操作都已经正常生成提交,仅最后一次拣选卡在冲突阶段,直接执行对应命令即可:

git cherry-pick --abort

执行后,这次失败拣选带来的暂存改动、未合并冲突文件都会被清理,仓库HEAD会停在最后一次拣选成功的提交位置,之前所有完成的拣选内容都会完整保留,不会被回退。

补充说明:如果你是一次性传入多个提交SHA执行批量cherry-pick(例如git cherry-pick <sha1> <sha2> <sha3>),要中止当前冲突的拣选、保留之前批量拣选成功的内容,不要用--abort参数,要执行git cherry-pick --quit。批量拣选场景下--abort会回滚整个拣选序列的所有操作,直接回到批量执行前的状态,会丢失之前已经拣选成功的内容。

内容的提问来源于stack exchange,提问作者S.K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 15:09:21