Nella radice del mio progetto ho una foocartella. All'interno della foocartella ho una barcartella. Vorrei ignorare tutte le modifiche a tutti i file all'interno della mia barcartella. Ho questo nel mio gitignore:
/foo/bar
La cartella è selezionata: esiste e contiene i file da ignorare. gitignoreè committed. Tuttavia, ho un file in cui eseguo un moification ed è nella mia barcartella. Quando scrivo
git status
all'interno del mio git bashvedo il file che avrebbe dovuto essere ignorato. Quale potrebbe essere il motivo e come posso ignorare con successo tutti i file all'interno della mia cartella della barra?
Si noti che i file sono stati precedentemente ignorati con la stessa riga, ma ho dovuto rimuovere temporaneamente quella riga su commitqualcosa sul server. Dopo il commit, ho rimesso la linea nel gitignore. Questo era un po 'di tempo fa, ma ora ho osservato che i file saranno presenti git status. Mi aspetterei di poter modificare i file ignorati senza che compaiano nel file git status.
git status foo/bar/file-that-should-be-ignoreddà?
git log foo/bar/file-that-should-be-ignored. Se non dovrebbe far parte del repository, è necessario rimuoverlo git rm --cached foo/bar/file-that-should-be-ignorede quindi eseguire il commit come suggerito da Reck di seguito (anche se lo farei solo sul file, non sull'intera cartella). Questo (a) rimuoverà il file da Git, (b) manterrà il file nella tua copia locale e (c) causerà la cancellazione del file quando altri fetcho pullil nuovo commit.
git add -f ignored-fileaggiungerà un file anche se è ignorato.