IntelliJ Idea执行Git交互式变基被Excel文件阻止如何解决?
问题根因
你遇到的不是合并冲突,是Git检测到工作区的excel-file.xlsx存在未提交的改动,而变基过程中要应用的提交也修改了该文件,为了避免覆盖本地未提交内容主动终止了流程。IDEA的diff面板显示内容一致,是因为Excel属于二进制文件,默认文本diff工具无法识别文件元数据、行尾符、二进制内容的细微差异,所以视觉上无区别但Git判定存在改动。
标准解决流程
- 若不需要保留当前本地
excel-file.xlsx的改动:
直接丢弃本地改动:git checkout -- excel-file.xlsx
操作完成后点击IDEA变基弹窗的「重试」按钮,或在终端执行git rebase --continue即可继续流程。 - 若需要保留当前本地
excel-file.xlsx的改动:
先暂存本地改动:git stash
暂存完成后继续执行变基,等变基全流程完成后,再恢复暂存的改动:git stash pop
恢复时如果出现文件冲突,手动处理后提交即可。
强制忽略该类变更的方法
如果你确定以当前feature分支的excel-file.xlsx版本为准,不需要合并develop分支对该文件的改动,可直接指定使用当前分支的文件版本:git checkout --ours excel-file.xlsx
执行后将文件加入暂存区:git add excel-file.xlsx
再继续变基流程即可:git rebase --continue
内容的提问来源于stack exchange,提问作者Nikolas
相关产品推荐
相关产品推荐

