重复变基步骤忽略空格

Repeat rebase step ignoring whitespace

假设我正在重新设置 git 中的某些功能分支。在某些步骤中,我看到了很大的冲突,但我发现这些冲突中的大部分是由于空格的变化引起的。我能否以某种方式让 git 仅重复当前的合并步骤,但对其应用忽略空白策略,而不在所有更改中启用忽略空白策略?我可能想在查看代码后重新缩进代码,因此非常需要一些不会自动继续 rebase 而只是更改工作树的技术。

当提交申请失败时,变基过程将暂停,您应该解决冲突。此时只需将工作树重置为上次应用的提交状态(清除工作树),然后使用适当的策略挑选有问题的提交:git cherry-pick --no-commit -X ignore-all-space <commit-id>。然后解决所有剩余的冲突并将结果状态添加到索引中。瞧,现在您可以使用 git rebase --continue.

继续变基

您也可以尝试使用 kdiff3 等工具,这些工具非常适合自动解决琐碎的冲突案例。

您可以在进行变基时使用 -Xignore-space-change 选项。

另一个答案建议在 rebase 遇到冲突时清除 index/staging 区域,然后使用 -Xignore-space-change 挑选提交。你不必那样做。你可以做 git rebase -Xignore-space-change <target branch>.