Usuń plik z kontroli wersji git bez usuwania go z systemu plików

13

Jak mogę usunąć plik z drzewa git bez usuwania go?

Łatwo jest git addwyśledzić plik, który nie jest śledzony przy następnym zatwierdzeniu, jednak nie wiem, jak usunąć plik, aby został ponownie „wyśledzony” przez inny zatwierdzenie.

dronus
źródło

Odpowiedzi:

19

Łatwy. Po prostu użyj git rm --cachedpliku, który chcesz usunąć z pamięci podręcznej kontroli wersji, ale nie chcesz usuwać / usuwać z systemu plików. Więc jeśli chcesz usunąć foo.txtz kontroli wersji w ten sposób, po prostu uruchom następujące polecenie:

git rm --cached foo.txt

Jak wyjaśniono w oficjalnej git-rmdokumentacji Git :

- buforowane

Użyj tej opcji, aby cofnąć scenę i usunąć ścieżki tylko z indeksu. Pliki drzewa roboczego, zmodyfikowane lub nie, zostaną pozostawione same sobie.

JakeGould
źródło
1
Ow ... Słyszałem --cachedwcześniej, ale pomyślałem, że usunie pliki z indeksu. Dzięki!
dronus