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

如何忽略过往Git Merge记录,重新查看分支间全部文件差异?

解决方法

直接提取目标文件(最简便)

如果只需要获取abc分支里那3个特定文件,不用重新走merge流程,直接从abc分支把文件拉到当前xyz分支即可:

# 替换成实际的3个文件路径
git checkout abc -- path/to/target-file1 path/to/target-file2 path/to/target-file3

执行后这3个文件会直接更新为abc分支的版本,你可以直接查看变更并提交。

查看两个分支的完整差异

如果要忽略过往合并记录,查看xyz和abc分支的所有差异,用以下命令:

# 查看两个分支顶端的全部文件差异
git diff xyz abc

# 仅查看单个文件的差异
git diff xyz abc -- path/to/specific-file

模拟全新合并(适合需要完整merge流程的场景)

如果一定要通过merge操作重现当初的6个文件变更,可通过临时分支绕过已有的合并记录:

  1. 用git log --oneline找到xyz分支在合并abc之前的提交哈希值
  2. 基于该历史提交创建临时分支:
git checkout -b temp-merge [合并前的提交哈希]
  1. 在临时分支上执行合并:
git merge abc --no-commit --no-ff

此时就能看到当初的6个文件变更,手动回退不需要的3个后提交合并结果
4. 回到xyz分支,把临时分支的有效变更合并过来:

git checkout xyz
git cherry-pick [临时分支上的合并提交哈希]
  1. 删除临时分支:
git branch -D temp-merge

内容的提问来源于stack exchange,提问作者Bruno Lamps

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 06:48:10