git bisect 与 CRLF/LF 结合使用



我试图在公共存储库中git bisect一些不良行为。

该存储库具有:

  • 一些使用 CRLF 提交(我在 MacOS 上,所以期待 LF)
  • 根目录中的.gitattributes文件,规范化 .c、.h 和.java文件

据我了解,目前的.git/config~/.gitconfig都无关紧要,因为.gitattributes优先。

我的问题与此有关:当我使用 CRLF 签出提交时,使用 LF 修改了本地文件。这些文件在git status时显示为已修改。然后,如果我尝试签出另一个提交,git 会拒绝以保护我的本地更改。好。

checkout的情况下,我可以用-f强制它,然后继续。

问题是我似乎不能强迫git bisect skip.如果我尝试,git告诉我隐藏更改。我无法获得干净的工作文件(无论如何,存储都会给我留下修改后的换行符),并且我无法跳过。

我尝试复制临时.gitattributes以使bisect保持换行符不变,但随后它抱怨.gitattributes更改未保存。

有没有办法强制bisect

现在的 .git/config 或 ~/.gitconfig 都无关紧要,因为 .gitattributes 具有优先权

不是真的,gitattributes 的本地文件是.git/info/attributes的,并且它优先于存储库中的任何.gitattributes文件

相关内容

  • 没有找到相关文章

最新更新