Git noob在这里。很难搞清楚为什么git会显示某些文件发生变化,而Eclipse EGit却没有。
当我在Eclipse中使用EGit并查看项目时,它显示没有更改文件。每个文件旁边都没有小插入符号。当我使用Git for Windows,或转到命令行并输入“git status”时,它会显示所有文件都已被修改。当我输入“git diff”时,它显示了一个文件的两个不同版本,第一个是红色,然后是绿色,似乎有一些空白差异,但我无法确定,我无法弄清楚空白是如何变化的在项目的每个文件中。 (这里的东西没有加起来。)“git diff -w”什么都不返回。 “git config --global apply.whitespace nowarn”什么都不做。
我可能在使用git时遇到了一个基本的概念问题。
在任何情况下,为什么EGit和git命令行显示不同的结果?
答案 0 :(得分:1)
EGit理解派生资源的概念(例如,用于JDT中生成的.class文件)。换句话说,在EGit中,默认情况下,派生资源中的文件不会添加到版本控制中。但是,命令行git客户端不知道这些标记,但依赖于.gitignore文件以避免检入生成的文件。
要检查是否派生了有问题的文件,请打开文件属性对话框(右键单击资源管理器中的文件,然后选择属性...),然后在“资源”页面上检查“派生”复选框(它应该是对话框的中间。)
答案 1 :(得分:1)
事实证明,git正在玩换行游戏。这是莫名其妙的。底线:EGit和git命令行都不能在Windows机器上使用。为了保持一致性,您必须使用其中一种。