Risposte:
Se lo usi rm, dovrai seguirlo git add <fileRemoved>. git rmfa questo in un solo passaggio.
Puoi anche usare git rm --cachedciò che rimuoverà il file dall'indice (gestendolo per la cancellazione al prossimo commit), ma manterrai la tua copia nel file system locale.
rm(invece di git rm) e cancellato molti file utilizzandolo, e ora non voglio gitseguirli. C'è un modo per ripristinare le modifiche? Voglio gitcalcare il mio rmcome rimosso poiché non ho usato git rmin primo luogo.
Rimuovere i file usando rmnon è un problema di per sé, ma se vuoi impegnarti a rimuovere il file, dovrai git rmcomunque farlo , quindi potresti farlo in questo modo.
Inoltre, a seconda della shell, git rmdopo aver eliminato il file, non otterrai il completamento delle schede, quindi dovrai precisare il percorso da solo, mentre se git rmil file esiste ancora, il completamento delle schede funzionerà normalmente.
Rimuovere i file dall'indice o dall'albero di lavoro e dall'indice. git rm non rimuoverà un file solo dalla tua directory di lavoro.
Ecco come è possibile eliminare un file utilizzando rm -fe quindi rimuoverlo dall'indice congit rm
$ rm -f index.html
$ git status -s
D index.html
$ git rm index.html
rm 'index.html'
$ git status -s
D index.html
Tuttavia puoi farlo tutto in una volta con solo git rm
$ git status -s
$ git rm index.html
rm 'index.html'
$ ls
lib vendor
$ git status -s
D index.html
Aggiungendo alla risposta di Andy, c'è un'utilità aggiuntiva per git rm:
Sicurezza : quando si esegue git rminvece di rm, Git bloccherà la rimozione in caso di discrepanza tra la HEADversione di un file e l'indice di gestione temporanea o la versione dell'albero di lavoro. Questo blocco è un meccanismo di sicurezza per impedire la rimozione delle modifiche in corso.
Salvaguardia : git rm --dry-run. Questa opzione è una protezione che eseguirà il git rmcomando ma non eliminerà effettivamente i file. Invece produrrà quali file avrebbe rimosso.
git reset --harde quindi fare un checkout del master per uscire dallo stato principale distaccato perché sapevo di non avere alcuna modifica senza commit. Se non hai eseguito il commit delle modifiche, potresti voler eseguire un git stash, ma sono relativamente nuovo con git, quindi non conosco il comando esatto. Se sei venuto qui o dopo il 2014, spero che questa risposta ti sia stata utile.