Articolo originale: Gitignore Explained: What is Gitignore and How to Add it to Your Repo
Il file .gitignore
è un file di testo che dice a Git quali file e cartelle ignorare in un progetto.
Un file .gitignore
locale viene tipicamente aggiunto nella cartella root di un progetto. Puoi anche creare un file .gitignore
globale, e quello che ci scrivi viene ignorato in tutti i tuoi repo Git.
Per creare un file .gitignore
locale, crea un file di testo e dagli il nome .gitignore
(ricorda di includere il punto .
all'inizio). Poi modifica questo file al bisogno. Ogni nuova riga dovrebbe elencare un altro file o un'altra cartella che vuoi che Git ignori.
Le voci in questo file possono anche seguire un pattern:
*
è un jolly/
è usato per ignorare percorsi relativi al file.gitignore
#
è usato per aggiungere commenti al file.gitignore
Questo è un esempio di come potrebbe essere un file .gitignore
:
# Ignora i file di sistema Mac
.DS_store
# Ignora la cartella node_modules
node_modules
# Ignora tutti i file .txt
*.txt
# Ignora i file collegati alle chiavi API
.env
# Ignora i file SASS di configurazione
.sass-cache
Per aggiungere o cambiare il tuo file .gitignore
globale, esegui il seguente comando:
git config --global core.excludesfile ~/.gitignore_global
Questo comando crea il file ~/.gitignore_global
. Ora puoi modificare quel file allo stesso modo di un file .gitignore
. Tutti i tuoi repo git ignoreranno i file e le cartelle scritte nel file globale .gitignore
.
Come smettere di tenere traccia dei file precedentemente inclusi in un commit da un nuovo gitignore
Per smettere di tenere traccia di un singolo file, cioè smettere di tenerne traccia ma non cancellarlo dal sistema usa:
git rm --cached filename
Per smettere di tenere traccia di tutti i file in .gitignore
:
Prima fai il commit di qualsiasi cambiamento che hai in sospeso, poi esegui:
git rm -r --cached
Questo rimuove qualsiasi file dall'indice (area di staging). Poi esegui:
git add .
Fai il commit:
git commit -m ".gitignore ora funziona"
Per annullare git rm --cached filename
, usa git add filename