Accueil·Commandes du terminal

git rm

git

Syntaxe

git rm [--cached] [-r] <pathspec>

Retire un fichier de l'index et du disque ; --cached conserve le fichier et cesse seulement de le suivre, mais l'ancien contenu reste dans l'historique, donc un secret fuité y demeure.

Options courantes

OptionSignification
--cachedstop tracking but leave the file on disk
-rrecurse into directories
-fremove even when the file has unstaged changes
-ndry run
--ignore-unmatchexit 0 even if nothing matched

Exemples

git rm --cached .env

stops tracking a secret file while keeping it locally

git rm -r build/

deletes the folder from the repository and from disk

git rm -n "*.log"

shows what would be removed

Ce qui embrouille, c’est qu’annuler a plusieurs formes : déplacer là où pointe une branche n’est pas ajouter un commit qui l’inverse.

Comment lire

  • Les crochets [ ] marquent une partie facultative.
  • Les points de suspension … signifient qu’on peut en mettre plusieurs.
  • Les options sont sensibles à la casse : sur certaines commandes, -r et -R ne font pas la même chose.

Questions fréquentes

Q. Que fait git rm ?

Retire un fichier de l'index et du disque ; --cached conserve le fichier et cesse seulement de le suivre, mais l'ancien contenu reste dans l'historique, donc un secret fuité y demeure.

Q. Comment l’écrire ?

git rm [--cached] [-r] <pathspec> — les crochets marquent ce qui est facultatif.

Q. Combien d’options valent la peine ?

Il y en a 5 ici ; la liste complète est dans man git. Cette commande relève de git.

Commandes liées

page man: man git-rm