La problématique est la suivante :
Comment faire en sorte qu'un fichier déjà versionné soit désormais totalement ignoré par git, seulement en local ? (donc, justement pas le .gitignore par ex.)
Vous entendrez parler beaucoup de cette commande pour résoudre ce problème :
git update-index --assume-unchanged <path-name>
Le hic, c'est que c'est pas la bonne solution. Celle-ci sert plutôt pour la performance, pour éviter que git vérifie si le <path-name> à changé ou pas, elle n'empêche pas l'écrasement du fichier si il est modifié sur le dépôt distant.
Il reste donc 2 solutions qui semble marcher :
git update-index --skip-worktree <path-name>
Qui sert justement détacher le <path-name> de la version sur le dépôt, pour avoir une version locale différente.
Ainsi que le fichier :
.git/info/exclude
Depuis la racine de votre dépôt local, qui sert lui à exclure un fichier qui n'est pas encore versionné.