如何在更改缩进时保留行的源代码提交引用

How to keep line's source commit reference while changing its indentation

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

showHappyIcon();

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

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

结果与 showHappyIcon(); 在使用 git blame 时链接到提交 222222。仅添加了白色 space 个字符,但似乎足以让 git 将其视为换行。

我想引用 showHappyIcon(); 的行以提交 111111,同时在代码中保留新的缩进。有什么好的实现方式吗?

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