Usunąłem kilka plików lokalnie na moim Macu za pomocą Findera. Chcę, aby pliki, które usunąłem, nie były już wyświetlane w bieżącej gałęzi, ale tak się dzieje.
Czy użytkownicy Gita znają polecenie aktualizacji indeksu?
@KimPrince - zgodnie z kernel.org , "-A --all Jak -u, ale dopasowuje <filepattern> do plików w drzewie roboczym oprócz indeksu. Oznacza to, że znajdzie nowe pliki, jak również pomieści zmodyfikowaną zawartość i usuwanie plików, których nie ma już w drzewie roboczym. "
To znacznie więcej niż tylko usuwanie usuniętych plików. Dodaje wszystkie pliki, które są zmieniane w katalogu, więc nie jest to naprawdę satysfakcjonująca odpowiedź.
Możesz zobaczyć usunięte pliki, które nadal są „śledzone” za pomocą:
git ls-files --deleted
Aby usunąć pliki z gałęzi, możesz zrobić coś takiego:
git ls-files --deleted -z | xargs -0 git rm
Od man git-rm:
Usuń pliki z indeksu lub z drzewa roboczego i indeksu. git-rm nie usunie pliku tylko z katalogu roboczego. (Nie ma opcji usunięcia pliku 13 tylko z drzewa roboczego, a mimo to zachowania go w indeksie; użyj / bin / rm, jeśli chcesz to zrobić.)
Na koniec, aby zatwierdzić „usunięcie”, wykonaj coś takiego:
Działa to w podanym przypadku użycia, ale to nie tylko powoduje usunięcie plików. Dodaje wszystkie pliki, które zostały w jakikolwiek sposób zmienione, więc generalnie nie jest to dobry sposób na usunięcie wszystkich usuniętych plików, chyba że są to jedyne wprowadzone zmiany.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.