Supprimer le fichier du contrôle de version git sans le supprimer du système de fichiers

13

Comment puis-je supprimer un fichier de l'arbre git sans le supprimer?

Il est facile pour git addun fichier non suivi de l'inclure par le prochain commit, mais je ne trouve pas comment supprimer le fichier pour qu'il soit "non suivi" par un autre commit.

dronus
la source

Réponses:

19

Facile. Utilisez simplement git rm --cachedle fichier que vous souhaitez supprimer du cache de contrôle de version, mais ne souhaitez pas supprimer / supprimer de votre système de fichiers. Donc, si vous souhaitez supprimer foo.txtdu contrôle de version comme celui-ci, exécutez simplement cette commande:

git rm --cached foo.txt

Comme expliqué dans la git-rmdocumentation officielle de Git :

--en cache

Utilisez cette option pour annuler la mise en scène et supprimer des chemins uniquement de l'index. Les fichiers d'arborescence de travail, modifiés ou non, seront laissés seuls.

JakeGould
la source
1
Ow ... J'en ai entendu parler --cachedauparavant, mais je pensais que cela supprimerait les fichiers de l'index. Merci!
dronus