如何在更改缩进时保留行的源提交参考

问题描述

在提交111111添加一个简单的代码

showHappyIcon();

并在提交222222中进行开发,例如:

if(config.IconsEnabled) {
  showHappyIcon();
}

结果与showHappyIcon();一致,并在使用git blame链接到提交222222。仅添加了空白字符,但对于git来说,将其视为新行就足够了。

我希望引用showHappyIcon();的行来提交111111,同时在代码中保留新的缩进。有实现它的好方法吗?

解决方法

两个建议。首先,尝试在命令行上为-w添加git blame选项。这将告诉它忽略空格中的更改,并为git提供一个更好的机会将行分配给正确的修订版。其次,它可能尝试将diff算法设置为“耐心”。我通过gitconfig进行此操作,因为它生成的差异可以更好地表示我的意图。这里唯一要注意的是,我不确定它是否影响git blame的输出,但我怀疑会影响。