Zmiana nazwy pliku

Znając mechanizmy zachodzące przy tworzeniu commitu możemy się zastanowić nad tym gdzie zapisywana jest informacja o operacjach na plikach taka jak np. zmiana ich nazwy. Otóż okazuje się, że... nigdzie.

Komunikat, który widzimy po wykonaniu polecenia git status mówiący nam o tym, że jakiś plik zmienił nazwę jest tylko interpretacją systemu kontroli wersji na bazie porównania podobieństw zawartości dwóch plików. Kiedy zmieniamy w naszym obszarze roboczym nazwę lub lokalizację pliku - git zapisuje te operacje jako usunięcie i dodanie nowego pliku. Kiedy wyświetlamy natomiast informacje o tych zmianach git porównuje zmienione pliki i jeśli są one podobne do pewnego stopnia - identyfikuje to jako zmianę nazwy/lokalizacji.

Ponieważ powyżej opisana operacja jest bardzo obciążająca I/O oraz CPU - w przypadku gdy zmienionych plików jest zbyt "duża" - git nie dokonuje porównania i wypisuje informację o usunięciu pliku z pewnej lokalizacji oraz dodaniu nowego pliku w nowej.

results matching ""

    No results matching ""