Come usare .gitignore: una guida passo dopo passo
In Git, il file .gitignore è uno strumento essenziale che ti aiuta a gestire quali file e directory vengono inclusi nel tuo repository di controllo versione. Utilizzando .gitignore, gli sviluppatori possono impedire il tracciamento di file non necessari, come file di log, dipendenze o file specifici del sistema. Questa guida ti mostrerà come creare e utilizzare un file .gitignore in modo efficiente.
Il file .gitignore indica a Git quali file o directory ignorare in un progetto. Consente agli sviluppatori di escludere file non necessari al progetto, contribuendo a mantenere una cronologia di versioni più pulita ed efficiente.
Perché usare .gitignore Copia link
-
Evitare il disordine: impedisce a file grandi o inutili di appesantire il repository.
-
Privacy: mantiene fuori dal controllo versione informazioni sensibili come chiavi API, credenziali o file di configurazione.
-
Efficienza: semplifica la collaborazione assicurando che vengano tracciati e condivisi solo i file essenziali.
Creare un file .gitignore Copia link
Creare un file .gitignore è semplice.
1. Accedi al tuo repository Git.
Apri il terminale e vai nella directory principale del tuo progetto Git.
cd /path/to/your/git/project2. Crea il file .gitignore.
Puoi creare il file con il seguente comando:
touch .gitignore3. Apri e modifica il file .gitignore.
Apri il file .gitignore nel tuo editor di testo e aggiungi i file o le directory che Git deve ignorare. Ad esempio:
# Ignorare la cartella node_modules
node_modules/
# Ignorare i file di log
*.log
# Ignorare i file .env
.env4. Salva e conferma le modifiche.
Dopo aver modificato il file, salvalo e conferma le modifiche in Git.
git add .gitignore
git commit -m "Add .gitignore"Modelli comuni in .gitignore Copia link
Esistono diversi modelli comunemente utilizzati nei file .gitignore per specificare file o directory da escludere. Di seguito alcuni esempi.
Ignorare file in base all’estensione:
*.log # Ignorare tutti i file di log
*.tmp # Ignorare tutti i file temporanei
*.swp # Ignorare i file swap creati dagli editor di testoIgnorare directory specifiche:
/logs/ # Ignorare la directory logs
/temp/ # Ignorare la directory tempIgnorare file nascosti:
.* # Ignorare tutti i file nascosti che iniziano con un punto (ad es. .DS_Store)Ignorare file in una cartella specifica:
/docs/*.pdf # Ignorare tutti i file PDF nella cartella docsNegare un modello (includere file precedentemente esclusi):
*.pdf # Ignorare tutti i file PDF
!resume.pdf # Non ignorare resume.pdfIgnorare file globalmente vs localmente Copia link
Sebbene .gitignore venga solitamente creato nella directory principale del repository, è possibile configurare Git per ignorare file anche a livello globale, applicandolo a tutti i repository presenti sulla macchina.
Ignorare file localmente Copia link
Se vuoi escludere file solo nel repository corrente, modifica semplicemente il file .gitignore all’interno di quel progetto. In questo modo l’esclusione verrà applicata solo a quel repository.
Ignorare file globalmente Copia link
Per creare un file .gitignore globale valido per tutti i tuoi repository, segui questi passaggi:
1. Crea un file .gitignore globale:
touch ~/.gitignore_global2. Aggiungi modelli al file .gitignore globale:
Modifica il file e inserisci i modelli relativi ai file che vuoi ignorare globalmente. Ad esempio:
*.log
*.tmp
.DS_Store3. Configura Git affinché utilizzi il file .gitignore globale:
git config --global core.excludesfile ~/.gitignore_globalBuone pratiche per utilizzare .gitignore Copia link
Per ottenere il massimo da .gitignore, segui queste buone pratiche:
- Aggiungi .gitignore all’inizio del progetto
Crea un file .gitignore non appena inizi un progetto per evitare che vengano tracciati file non necessari.
- Mantienilo organizzato
Organizza il tuo .gitignore raggruppando modelli correlati e aggiungendo commenti. Ad esempio:
# File generati dal sistema operativo
.DS_Store
Thumbs.db
# Dipendenze Node.js
node_modules/- Non confermare informazioni sensibili
Utilizza .gitignore per assicurarti che file privati come chiavi API e impostazioni di configurazione non vengano aggiunti accidentalmente al controllo versione.
- Testa il tuo .gitignore
Usa git status per verificare se il tuo file .gitignore sta escludendo correttamente i file. Se un file continua a essere tracciato, è possibile che sia stato aggiunto al repository prima di essere ignorato.
Risoluzione dei problemi di .gitignore Copia link
A volte, file che dovrebbero essere ignorati continuano a essere tracciati. Ecco alcune cause comuni e le relative soluzioni.
File già tracciati Copia link
Se un file è stato aggiunto al repository prima di essere incluso in .gitignore, Git continuerà a tracciarlo. Per interrompere il tracciamento:
1. Rimuovi il file da Git senza eliminarlo localmente:
git rm --cached filename2. Aggiungi il file a .gitignore.
3. Conferma il file .gitignore aggiornato e la rimozione del file in cache:
git commit -m "Update .gitignore and remove cached files"Problemi di maiuscole e minuscole Copia link
Git distingue tra maiuscole e minuscole. Assicurati quindi che i modelli nel tuo .gitignore corrispondano esattamente alla denominazione dei file.
Ad esempio:
file.txt # Ignores file.txt but not File.txtTestare con git check-ignore
Per verificare se un file viene ignorato correttamente, puoi utilizzare il comando git check-ignore:
git check-ignore -v filenameQuesto comando mostra la regola responsabile dell’ignoramento del file.
Conclusione Copia link
Utilizzando .gitignore in modo efficace, puoi controllare quali file vengono inclusi nel tuo repository Git e garantire che vengano tracciati solo i file essenziali. Segui i passaggi di questa guida per creare, personalizzare e risolvere problemi relativi al tuo file .gitignore, mantenendo così una gestione efficiente delle versioni.