There is nothing changed, but eclipse egit marks the file as changed

GitEgit

Git Problem Overview


I'm using eclipse egit with github. I found something strange that I didn't change anything, but egit marked the file as "changed". See the images:

  1. the file "run.bat" is marked as "changed"

    enter image description here

  2. Compare with "file in Git index", you can see nothing is different

    enter image description here

  3. Compare with "file in HEAD", you can see nothing is different neither

    enter image description here

My friend uses mac and I use windows, but we all configured git as "commit unix lineend".. I also checked the lineend of my source and the HEAD, they are the same(I configured git to convert them to "\r\n" when pulling)

Where is wrong? Is it a bug of Egit?

Git Solutions


Solution 1 - Git

Eclipse Preferences / Team / Git / Configuration / User Settings

("core" section)

key: autocrlf
value: false

The key should already exist, so just need to edit the value.

If creating a new key then use core.autocrlf.

Solution 2 - Git

One of the first things I've had issues with in Git.

I've said this forever:

git config --system core.autocrlf false

To get rid of CR highlighting in diff and patch views, use:

git config --system core.whitespace cr-at-eol

If you share your computers with others, replace '--system' with '--global'.

Solution 3 - Git

As a follow up, as I just ran into the same issue, another reason for EGit detecting all files as changed is a POSIX file permission problem at least when used together with Cygwin's git.

The following will fix that; however keep in mind that this also means that they are ignored then:

$ git config core.filemode false

Solution 4 - Git

For eclipse specific issues for linefeed, you can also change the return character in Eclipse Preferences where you can change the New text file line delimiter from Windows syntax to Unix which should help.

Eclipse Next File Line Delimiter settings

Solution 5 - Git

you can ignore whitespace differences with Eclipse settings under Compare/Patch. Preferences-->General-->Compare/Patch,you can find the "Ignore white space" in the right,and select this option.

Solution 6 - Git

I also have the same issue from the Eclipse git commit is showing this issue

once modified file and finally removed the changes from the file even though it showing the file in Un staged changes section.

Solution:
Eclipse -> Window -> Preferences -> Team -> Git -> Configuration -> User Settings (right side tab)

click on Add Entry

Key  : core.autocrlf
Value: true

click on Ok then click on Apply -> Ok Refresh your "Git Staging tab" or check the Team -> commit option. now it will only show the exact changes only.

Solution 7 - Git

i had the same issue and nothing of the proposed solutions did work. i hat the autocrlf feature turned off, the latest version of egit and git installed. the line endings of the repository and local files were both matching.

the problem was caused by an entry in the .gitattributes:

* text=auto eol=lf

i could therefore:

  • remove the attribute
  • commit the changes

but what also did work was to go to command line and type

> git reset --hard

and then refresh in eclipse.

Solution 8 - Git

In General->Workspace. Select Text encoding UTF-8

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionFreewindView Question on Stackoverflow
Solution 1 - GitMarkView Answer on Stackoverflow
Solution 2 - GitAdam DymitrukView Answer on Stackoverflow
Solution 3 - GitAxel DörflerView Answer on Stackoverflow
Solution 4 - GitMarcusView Answer on Stackoverflow
Solution 5 - Gitlucky8060View Answer on Stackoverflow
Solution 6 - GitVenkata Naresh BabuView Answer on Stackoverflow
Solution 7 - GitbenezView Answer on Stackoverflow
Solution 8 - GitSudipta SenView Answer on Stackoverflow