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

如何撤销Pull Request中单个文件的全部修改?

回滚分支中特定文件的所有修改

要彻底回滚my-feature分支里对somefolder/somefile.sh的所有修改,最直接稳妥的方式是将该文件恢复到origin/development分支的状态,具体命令如下:

  1. 确保当前处于目标分支:

    git checkout my-feature
    
  2. 从基准分支拉取该文件的原始版本覆盖本地修改:

    git checkout origin/development -- somefolder/somefile.sh
    
  3. 提交回滚操作:

    git commit -m "Revert all changes to somefolder/somefile.sh"
    
  4. 由于之前已推送过分支且执行过变基,需要强制推送更新远程分支:

    git push origin my-feature --force
    

补充说明

如果分支中针对该文件有多个独立提交,也可以通过git log -- somefolder/somefile.sh找到所有修改该文件的提交哈希,然后逐个执行git revert <commit-hash>来撤销每个提交的修改,最后再推送。但这种方式步骤更多,适合需要保留其他关联修改的场景;如果只是要完全丢弃该文件的所有变更,上面的方法效率更高。

内容的提问来源于stack exchange,提问作者Alexey Starinsky

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 14:25:46