Jak sprawić, by git-diff ignorował ^m?

Jak sprawić, by git-diff ignorował ^m?

Podczas pracy z GIT nad różnymi systemami operacyjnymi problemy mogą pojawić się z separatorami plików. Kiedy użytkownicy wykonują „git diff„Operacja, niektóre linie zawierają”^M”Jako separator plików. Wynika to z faktu, że „git diff” uważa cały plik za pojedynczy wiersz. Aby uniknąć tego problemu, programiści muszą skonfigurować GIT, aby przekonwertować separator plików i automatycznie zignorować „^m”.

W tym artykule pokazuje procedurę podjęcia „Git-Diff„Ignoruj”^M".

Jak zrobić „git-diff” ignoruj ​​^m?

Aby git-diff ignoruj ​​”^M”, Postępuj zgodnie z podanymi instrukcjami:

    • Przekieruj do lokalnego repozytorium GIT.
    • Zaktualizuj wartość automatycznego CRLF za pomocą „Git Config -Global Core.Autocrlf True" Komenda.
    • Usuń żądany plik z indeksu za pośrednictwem „git rm -cached -r" Komenda.
    • Dodaj ponownie usunięte pliki do indeksu.
    • Zobowiązaj dodane zmiany.
    • Sprawdź zmiany.

Krok 1: Przejdź do żądanego repozytorium

Najpierw wykonaj podane polecenie i przejdź do lokalnego katalogu GIT:

$ cd "c: \ git \ repos1


Krok 2: Wyświetl zmiany zatwierdzenia

Następnie uruchom „git diff”Polecenie wraz z pożądanym identyfikatorem zatwierdzenia, aby wyświetlić jego zmiany:

$ git diff 3974733


Można zauważyć, że kilka wierszy pliku zawiera „^M„Jako nowy separator linii:


Aby git-diff ignoruj ​​”^M”(Separator linii), postępuj zgodnie z podmiotami poniżej.

Krok 3: Wyświetl automatyczną wartość domyślną CRLF

Wykonaj następujące polecenie, aby wyświetlić domyślną wartość Auto CRLF:

$ git config -global Core.Autocrlf


Zgodnie z podwładnym zrzutem ekranu, domyślna wartość Auto CRLF wynosi „FAŁSZ”:


Krok 4: Zaktualizuj Auto CRLF Wartość domyślna

Teraz zaktualizuj wartość Auto CRLF do „PRAWDA”:

$ git config -global Core.Autocrlf True



Następnie zweryfikuj nowe ustawienie, uruchamiając poniższe polecenie:

$ git config -global Core.Autocrlf



Krok 5: Usuń plik z indeksu

Następnie usuń żądany plik z obszaru zaawansowania git. Tutaj "-buforowany„Opcja usuwa plik z repozytorium GIT:

$ git rm -pobudzony -r demo_file.tekst


Można zauważyć, że plik został usunięty z indeksu GIT:


Krok 6: Dodaj usunięte pliki do indeksu

Teraz uruchom poniżej listę, aby ponownie dodać usunięte pliki do indeksu:

$ git diff -pobudzony -na nazwa -z -z | xargs -0 git



Krok 7: Zmiany popełniania

Następnie poprowadź nowo dodane zmiany w „git zatwierdzić" Komenda:

$ git commit -m „Napraw problem crlf”



Krok 8: weryfikacja

Aby upewnić się, czy git-diff ignoruje „^M”Lub nie, uruchom„git diff„Poleć ponownie:

$ git diff 3974733


Tutaj można zauważyć, że linie plików nie zawierają ”^M" nie więcej:


Wyjaśniliśmy metodę, aby git-diff ignorował ^m.

Wniosek

Aby Git-Diff zignoruj ​​^m, najpierw przekieruj do lokalnego repozytorium git. Następnie wykonaj „Git Config -Global Core.Autocrlf True”Polecenie aktualizacji wartości automatycznej CRLF do„PRAWDA". Następnie usuń plik z indeksu i ponownie dodaj plik do indeksu. Na koniec popełnij dodane zmiany. W tym artykule pokazano procedurę podjęcia „Git-Diff„Ignoruj”^M".