Git

Git e .gitignore

Matteo Galacci ·

.gitignore descrive file che Git deve ignorare quando cerca contenuti non tracciati. Non blocca aggiornamenti di file già presenti nel repository e non è un filtro di sicurezza per push o pull.

Per smettere di tracciare un file conservando la tua copia di lavoro: aggiungi la regola a .gitignore, poi esegui:

git rm --cached -- percorso/file
git add -- .gitignore
git diff --staged

Per una cartella usa git rm -r --cached -- percorso/cartella. Controlla il diff prima del commit: la rimozione verrà registrata nella nuova revisione e può eliminare la copia tracciata degli altri collaboratori quando aggiornano il repository.

Il file rimane nei vecchi commit. Se conteneva una password o un token, revoca prima la credenziale; aggiungerlo a gitignore non rimuove un segreto già pubblicato.

Esempio completo

Per ignorare la cartella log della radice, inserisci una riga /log/ in .gitignore. Se è tracciata, applica git rm -r --cached -- log/ e controlla lo stage. Poi registra entrambe le modifiche con un commit.

git check-ignore -v log/esempio.log
git ls-files -- log/

Il primo comando deve mostrare la regola che ignora il file, il secondo non deve elencare file ancora tracciati sotto log. I dati devono rimanere nella tua cartella locale.

Fonti e approfondimenti