2016-06-07 122 views
0

当我尝试做git stash save --patch时,我得到很多在git diffgit status中看不到的修补程序更改。每次更改删除某些线,然后重新插入相同的路线,没有明显的变化,例如:`git stash --patch`显示的行改变了`git diff` /`git status`没有显示

-Some text line 
+Some text line 
-Another line 
+Another line 

所有这些变化都已经有一段时间没有被触及的资源文件。我的平台是使用Git for Windows的Windows。

为什么git stash显示的内容与git diff不同,我该如何解决?

回答

0

这与臭名昭着的git行结尾/ core.autocrlf选项和.gitattributes文件有关。尽管我不明白原因,但我已经找到了解决方案。

事实证明,某些git过程¹在我的本地存储库中创建了一个未跟踪的.gitattributes文件。几乎所有在这个文件中的行被注释掉,除了靠近顶部有:

* text=auto 

当我注释掉这一行,因为这样

#* text=auto 

git stash的问题消失,我只看到git diff看到的变化。


¹)我怀疑的原因是我在同一个存储库中创建一个新的Visual Studio C#项目 - 我猜IDE检测到存储库和添加的文件。

相关问题