6

这里是 Git 菜鸟。很难弄清楚为什么 git 显示某些文件已更改,而 Eclipse EGit 却没有。

当我在 Eclipse 中使用 EGit 并查看项目时,它显示没有文件更改。每个文件旁边没有小插入符号。当我使用 Git for Windows 时,或者进入命令行并输入“git status”时,它显示所有文件都已被修改。当我输入“git diff”时,它显示了一个文件的两个不同版本,首先是红色,然后是绿色,并且似乎存在一些空白差异,但我不能确定,我无法弄清楚空白是如何变化的在项目的每个文件中。(这里的东西没有加起来。)“git diff -w”什么都不返回。“git config --global apply.whitespace nowarn”什么也不做。

我可能对 git 有一个基本的概念问题。

无论如何,为什么 EGit 和 git 命令行显示不同的结果?

4

2 回答 2

1

EGit 理解派生资源的概念(例如,用于在 JDT 中生成的 .class 文件)。换句话说,在 EGit 中默认情况下,派生资源中的文件不会添加到版本控制中。但是,命令行 git 客户端不知道这些标记,而是依赖 .gitignore 文件来避免签入生成的文件。

要检查有问题的文件是否是派生的,请打开文件属性对话框(在资源管理器中右键单击文件,然后选择属性...),然后在资源页面上选中派生复选框(它应该在对话框)。

于 2012-05-29T19:37:19.017 回答
1

事实证明,git 正在玩换行符游戏。这是莫名其妙的。底线:EGit 和 git 命令行不能同时在 Windows 机器上使用。为了获得一致性,您必须使用其中一种。

于 2012-07-08T23:14:27.940 回答