Odpowiedzi:
Jeśli po prostu używasz rm, będziesz musiał kontynuować z git add <fileRemoved>. git rmrobi to w jednym kroku.
Możesz także użyć polecenia, git rm --cachedktóre usunie plik z indeksu (umieszczając go w celu usunięcia przy następnym zatwierdzeniu), ale zachowaj swoją kopię w lokalnym systemie plików.
rm(zamiast git rm) i usunąłem wiele plików przy jego użyciu, a teraz nie chcę gitich śledzić. Czy istnieje sposób na cofnięcie zmian? Chcę, gitaby moje zdjęcie zostało rmusunięte, ponieważ nie używałem git rmw pierwszej kolejności.
Usuwanie plików za pomocą rmnie jest problemem per se, ale jeśli potem chcesz potwierdzić, że plik został usunięty, będziesz musiał to zrobić i git rmtak, więc równie dobrze możesz to zrobić w ten sposób od razu.
Ponadto, w zależności od Twojej powłoki, git rmpo usunięciu pliku nie otrzymasz uzupełniania tabulatorami, więc będziesz musiał samodzielnie przeliterować ścieżkę, podczas gdy jeśli git rmplik nadal istnieje, uzupełnianie kart będzie działać normalnie.
Usuń pliki z indeksu lub z drzewa roboczego i indeksu. git rm nie usunie pliku tylko z katalogu roboczego.
Oto, jak możesz usunąć plik za pomocą, rm -fa następnie usunąć go z indeksu za pomocągit rm
$ rm -f index.html
$ git status -s
D index.html
$ git rm index.html
rm 'index.html'
$ git status -s
D index.html
Jednak możesz to wszystko zrobić za jednym razem, używając tylko git rm
$ git status -s
$ git rm index.html
rm 'index.html'
$ ls
lib vendor
$ git status -s
D index.html
Dodając do odpowiedzi Andy'ego, istnieje dodatkowe narzędzie do git rm:
Bezpieczeństwo : git rmzamiast tego rmGit zablokuje usunięcie, jeśli wystąpi rozbieżność między HEADwersją pliku a indeksem pomostowym lub wersją drzewa roboczego. Ten blok jest mechanizmem zabezpieczającym , który zapobiega usuwaniu trwających zmian.
Zabezpieczenia : git rm --dry-run. Ta opcja jest zabezpieczeniem, które wykona git rmpolecenie, ale w rzeczywistości nie usunie plików. Zamiast tego wyświetli pliki, które by usunął.
git reset --harda następnie wykonać checkout mastera, aby wyjść z odłączonej głowy, ponieważ wiedziałem, że nie mam żadnych niezatwierdzonych zmian. Jeśli nie zatwierdziłeś zmian, możesz chcieć zrobić git stash, ale jestem stosunkowo nowy w git, więc nie znam dokładnego polecenia. Jeśli przyjechałeś tu w 2014 roku lub później, mam nadzieję, że ta odpowiedź była dla Ciebie przydatna.