【发布时间】:2012-07-17 01:19:46
【问题描述】:
我知道有很多关于这个问题的文章。但我为此苦苦挣扎了几个星期,但没有成功。
我正在尝试使用github 中描述的最佳做法。所以我添加了一个 .gitattributes 文件,例如它看起来像这样:
*.cs text
我已经对所有文件的行尾进行了规范化。现在我有干净的工作副本,没有什么可提交的。但是现在,如果我在任何 Windows 文本编辑器中打开一个罚款并进行一些随机更改,保存文件,撤消该更改,我会看到该文件已更改。我知道这是因为文件现在具有 Windows 样式的行尾。但这是一种可怕的工作方式,文件没有任何变化,我希望 git 在没有git reset --hard 的情况下知道它。在这种情况下你会推荐什么?
【问题讨论】:
-
您实际上是如何“标准化”它的?对于 Windows,我在
.cs文件中使用\r\n并使用as-is行结尾 git 设置 -
什么告诉你文件已经改变了。您是否尝试过运行
git status来刷新缓存? -
是的 git status 表明文件已更改。
-
@zerkms 我已经用 git rm --cached 删除了所有文件。并使 git reset --hard 强制所有文件被 git 修改
标签: windows git gitattributes core.autocrlf