2013-02-08 21 views
5

Ten problem doprowadza mnie do szału. Używanie Gita z Githubem.Git pull --rebase przekształca przestrzenie w tabulatory

Pracuję nad jednym konkretnym plikiem, używając spacji zamiast kart. Zawsze upewniam się, że zmieniam wszystkie wcięcia tabulacji na spacje. Diffs potwierdzają, że zmieniłem karty na spacje. Zatwierdzam i wciskam kod (z innymi zmianami) i wszystko jest w porządku.

Do, I git pull --rebase. Teraz mój plik - w częściach - ma karty zastępujące spacje! Zauważ, że dotyczy to części pliku, które tylko ja kiedykolwiek edytowałem i zawsze używam spacji, a nie kart.

Nie dzieje się tak, gdy wykonuję normalny git pull, tylko w bazie danych.

Ponadto zmiany w innych gałęziach, które są połączone w główny oddział integracji, są również w porządku. Dzieje się tak po prostu przy przegrupowaniu gałęzi integracji.

+3

Czy są jakieś haki zarejestrowane? Lub coś skonfigurowanego w twoim domenie/home/.gitconfig? Istnieje opcja, która może być ustawiona jak whitespace = fix lub coś podobnego. Powinieneś o to uważać. Wyszukaj core.whiteapce w http://www.progit.org/book/en/Customizing-Git-Git-Configuration –

+0

Tak, bez haczyków. To chyba coś z moim IDE. Dzięki! –

+1

Jeśli używasz Eclipse an EGit. Sprawdź ustawienie eclipse dla EGit. Można tam ustawić ustawienia;) –

Odpowiedz

0

Ten problem może być spowodowany ustawieniami końca wiersza. Możesz skonfigurować swój git za pomocą instrukcji here.

6
git apply --whitespace=fix 

wydaje się, że tak się stanie podczas reorganizacji.

Może ustawić

[apply] 
    whitespace = warn 

w gitconfig i zobaczyć, czy to rozwiąże problem.

Zobacz także "core.whitespace" setting.

+0

kumpel koledzy, zapisany mój dzień! – rryter