【发布时间】:2015-12-25 18:17:15
【问题描述】:
我正在为我的 PHP 项目和 eGit 插件使用面向 PHP 开发人员的 Eclipse Luna。当我在 Eclipse 中打开 Git Staging 视图时,有一些文件可以暂存,但我没有更改。当我打开它们进行比较时 - 没有区别。单击“重置”以放弃这些更改不会从暂存中删除这些文件。所以我的问题是,什么可能导致文件被视为已修改并准备好暂存,尽管它们没有被修改?
【问题讨论】:
我正在为我的 PHP 项目和 eGit 插件使用面向 PHP 开发人员的 Eclipse Luna。当我在 Eclipse 中打开 Git Staging 视图时,有一些文件可以暂存,但我没有更改。当我打开它们进行比较时 - 没有区别。单击“重置”以放弃这些更改不会从暂存中删除这些文件。所以我的问题是,什么可能导致文件被视为已修改并准备好暂存,尽管它们没有被修改?
【问题讨论】:
行尾可能已经改变,但这可以在比较视图中看到 - 所有行都被标记为不同,但没有其他可见的变化。您可以使 eclipse 显示空白以使验证更容易。一些 Eclipse 任务和其他程序静默地将行尾转换为 Windows。
另一个选项可能是在这些文件上设置了执行位,您在 Windows 上并且将 core.filemode 标志设置为 true。 EGit 会告诉你 repo 中的文件是可执行的,但在你的工作副本中不是。将标志重置为 false 以摆脱它。
如果您的问题不是由上述任何原因引起的,请更详细地描述该案例并检查命令行git status 是否也显示更改。
【讨论】: