windows - GIT bash anerkender ikke ændringer til '.classpath' fil via 'git diff'

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg brugte kommandolinje GIT GNU bash som GIT-klient til at tjekke ind i mit Java-projekt, som jeg arbejdede på i Eclipse.


Som en del af arbejdet ændrede jeg nogle projektbygningsindstillinger, som i Eclipse er optaget i en skjult (.dot) fil kaldet '.classpath' i projektets rodmappe.


Af en eller anden grund nægtede git diff at genkende ændringen:


user@HOST MINGW64 /c/\_GIT/myserver (BRANCH1)
$ git diff .classpath

<==== crickets. Empty output!!!!


Jeg kunne dog se, at filen blev ændret, med en nylig tidsstempel (og kunne bevise, at den ændrede sig ved at eksplicit gøre git commit og skubbe forandringen):


user@HOST MINGW64 /c/\_GIT/myserver (BRANCH1)
$ git commit -m "remove test" .classpath

[BRANCH1 bd4c1c5] remove test
 1 file changed, 28 insertions(+)
 create mode 100644 .classpath

user@HOST MINGW64 /c/\_GIT/myserver (BRANCH1)
$ git push
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100\% (3/3), done.
Writing objects: 100\% (3/3), 610 bytes | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Simple Bitbucket Commit Checker
remote: Create pull request for BRANCH1:
remote:   http://GIT\_URL....
remote:
To http://GIT\_URL....
   77981fe..bd4c1c5  BRANCH1 -> BRANCH1


GNU bash, version 4.3.46 (2) -release (x86\_64-pc-msys)

Bedste reference


git diff uden valg eller argumenter viser ændringen mellem dit arbejdende træ og indekset. Sandsynligvis blev dine ændringer indstillet til at begå (via git add). Du kan køre git status for at bekræfte det. For at se sådanne ændringer (dvs. diff mellem indekset og HEAD) skal du have kørt git diff --staged.