Excel 文件阻止我在 IntelliJ Idea 中进行交互式变基

An Excel file prevents me to do interactive rebase in IntelliJ Idea

当我想将 develop 分支与我的 feature 分支变基时,我遇到了合并冲突。我使用 IntelliJ Idea 执行单个 Git 命令。假设我有 3 个推送提交,我想使用 --interactive 模式对它们进行压缩和变基。

我 select 所有三个提交,我 select squash,做一些改写,然后点击 Rebase

进程失败,Git 面板中 Changes 和 diff 面板上出现的 Excel 文件表示内容相同.我只能中止或重试变基,但继续没有意义,因为更改总是阻止我继续。

控制台输出如下:

12:50:42.385: [myapplication] git -c credential.helper= -c core.quotepath=false -c log.showSignature=false -c core.commentChar= rebase --interactive develop
Rebasing (1/2)
error: Your local changes to the following files would be overwritten by merge:
    excel-file.xlsx
Please commit your changes or stash them before you merge.
Aborting
hint: Could not execute the todo command
hint: 
hint:     fixup 37d1fc57dff9c7e9a312c88cf78c176cb71dbb47 CommitMessageIsHere
hint: 
hint: It has been rescheduled; To edit the command before continuing, please
hint: edit the todo list first:
hint: 
hint:     git rebase --edit-todo
hint:     git rebase --continue
Could not apply 37d1fc5... CommitMessageIsHere

有克服这个障碍的技巧吗?有可能以某种方式 force 忽略和跳过此类合并冲突吗?

您使用 excel-file.xlsx 的未跟踪副本开始您的变基,当 git 遇到包含“创建新 excel-file.xlsx 文件”操作的提交时,他停止了。

在继续之前,您必须以某种方式搁置这个未跟踪的版本。


最简单的方法是:

  • 重命名磁盘上的文件:

    mv excel-file.xlsx excel-file.xlsx.tmp
    
  • 运行 git rebase --continue:
    要么 IntelliJ 有一个看起来像“继续变基”的按钮,要么你可以从命令行运行这个命令,

  • 变基完成后:
    您可以比较两个文件的内容,并确定正确的操作是什么——更新跟踪版本,删除 tmp 文件...