2011-12-15 11 views
10

Pracuję z Git na moim komputerze z systemem Windows 7 w linii poleceń i TortoiseGit. To działa dobrze. Teraz zainstalowałem EGit dla Eclipse. EGit pokazuje wszystkie pliki jako zmienione, mimo że status git poprawnie zgłasza, że ​​nie ma żadnych zmian.Egit pokazuje wszystkie pliki jako zmienione

Każdy pomysł, co jest nie tak?

+1

Czy zaćmienie zmieniając styl zakończeń linii (od 'LF' do' CRLF' lub odwrotnie)? –

+0

@DavidBrigada powiedział, że 'git status' nie wykazuje różnicy – fge

Odpowiedz

13

Miałem również podobny problem, mam zmienił poniżej własność ustawienia repozytorium pod konfiguracji Git w Eclipse

autocrlf = false

Ten problem został rozwiązany

Możesz uzyskać więcej informacji z link poniżej zbyt:

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

zasadzie dodałem tego pro perty as true, aby adresować znaki ctrl + M w plikach skryptów. Teraz nie jestem pewien, jak rozwiązać ten problem. Wszelkie myśli na ten temat, proszę podzielić się.

+1

W przeciwieństwie do wspomnianego postu pracuję tylko nad oknami. Wszystkie inne narzędzia, w tym Eclipse, działają dobrze i nie ma problemów z zakończeniem linii. To tylko EGIT pokazuje wszystko jako zmienione. Odtwarzanie z ustawieniami końca linii wpłynie na repozytorium, co zdecydowanie nie jest właściwym rozwiązaniem. – BetaRide

+0

Naprawiono problem dla mnie! – Etienne

+0

Wygląda na to, że rozwiązałem mój problem, dobrym pomysłem jest również zmiana końcówek linii Eclipse na Unix, jeśli pracujesz na wielu platformach. Pomoc> Preferencje> Ogólne> Przestrzeń robocza> Nowy ogranicznik linii pliku tekstowego – 3urdoch

2

Jest to późna odpowiedź, ale ja niedawno wpadł na ten sam problem, gdy początkowo klonowania repozytorium git. EGit pokazywał wszystkie pliki jako zmienione, mimo że został właśnie sklonowany, a git bash nie pokazał żadnych zmian w plikach.

Ponieważ zwykle nie chcą autocrlf = false na komputerach z systemem Windows, zostawiłem autocrlf = true i klonuje repozytorium. Następnie w EGit zobowiązałem się do wprowadzenia fałszywych zmian do wszystkich plików i ostatecznie w git bash powróciłem do poprzedniego zatwierdzenia z git reset --hard HEAD^1. To podstępnie skłoniło EGit do pomyślenia, że ​​końcówki linii były poprawne bez potrzeby dotykania rzeczywistego repozytorium. Zobowiązania i ciągnięcia po tym punkcie nie powtórzyły zamieszania na EGG w mojej konfiguracji. Ponadto nie pojawiają się nieoczekiwane zmiany końca linii, gdy wysyłam do repozytorium.

1

Nigdy nie udało mi się uzyskać żadnego z sugerowanych rozwiązań. Skończyło się naprawianie problemu przez ponowne klonowanie repozytorium z zainstalowanym Windows Git Bash (wcześniej sklonowałem używając Git w Cygwin).

jestem delegowania to jako inną odpowiedź na wszelki wypadek, gdyby ktoś inny w tej samej łodzi, jak ja.

1

Ja także mając ten problem i to doprowadza mnie do szału! To kepts mówiąc: „Zamówienie konfliktów z pliku:”

W każdym razie udało mi się (niby) rozwiązać ten problem przy użyciu kombinacji następujących:

Team -> Zaawansowane -> Przyjęto Niezmieniony od zasobu powoduje konflikt

Następnie zmień wartość core.autocrlf na wartość false, a także ustaw core.whitespace na pusty łańcuch.

Działa to dobrze dla .java pliki, ale pliki .xml i plików .XSD nadal są przyczyną tego problemu!

Powiązane problemy