1) Per iniziare a ignorare le modifiche a un singolo file già con versione
git update-index --assume-unchanged "main/dontcheckmein.txt"
e per annullarlo git update-index --no-assume-unchanged "main/dontcheckmein.txt"
documenti github per ignorare i file
2) Ignorare completamente un singolo file specifico impedendone la creazione nel repository
Per prima cosa, guarda questo post di StackOverflow: Git Global Ignore non funziona
In .gitignore, aggiungi il percorso relativo al file senza lead ./.
Quindi, se il tuo file è MyProject/MyFolder/myfile.txt, (dove si .gittrova anche nella MyProjectcartella), aggiungi MyFolder/myfile.txtal tuo .gitignorefile.
Puoi confermare quali regole sono associate a ignora tramite git check-ignore "MyFolder/myfile.txt"
A proposito di globale ignorare
Quel link parla ~/.gitignore_global, ma il file è legato al tuo progetto. Quindi, se si mette il modello esclude MyFolder/myfile.txtin ~/.gitignore_global, funzionerà, ma non ha molto senso ...
D'altra parte, se si imposta il progetto con git config core.excludesfile .gitignoredove si .gitignoretrova MyProject, il file locale avrà la precedenza ~/.gitignore_global, il che può avere regole molto utili ...
Quindi, per ora, penso che sia meglio fare qualche script per mescolare il vostro .gitignorecon ~/.gitignore_globala .gitignore.
Un ultimo avvertimento
Se il file che si desidera ignorare è già nel repository, questo metodo non funzionerà a meno che non si esegua questa operazione: git rm "MyFolder/myfile.txt"ma prima eseguirne il backup, poiché verrà rimosso anche localmente! Puoi copiarlo più tardi ...