Git: ne plus suivre un fichier, ne le supprime pas

Un problème que les débutants rencontrent souvent avec git est de voir un fichier dans l’historique alors que celui ci est décrit dans le fichier .gitignore. Quand vous demandez à Git d’ignorer des fichiers, cela ne fait qu’arrêter de suivre les modifications d’un fichier, et rien d’autre. Le fichier sera toujours dans l’historique et donc conservé.

Si vous voulez supprimer un fichier de votre dépôt, mais le garder dans votre répertoire de travail, utilisez la commande suivante:

git rm --cached (file)

Avec cette commande, le fichier sera conservé dans votre historique. Si vous voulez le supprimer de votre historique, vous avez deux options: réécrire les commits ou tout recommencer. Ces deux options sont mauvaises, et pour une bonne raison: Git essaie au maximum de ne pas perdre vos données. Comme pour le rebasing, Git vous force à faire consciemment ces opérations parce qu’elles entraînent une perte de données.

Si vous voulez vraiment retirer un fichier de l’historique, git filter-branch est l’outil qu’il vous faut. Il vous faudra lire le manuel avant de l’utiliser, car cette commande réécrit les commits relatifs au projet. C’est un bon outil pour pas mal d’opérations, et il permet de faire beaucoup de choses comme supprimer entièrement les commits d’un auteur ou déplacer la racine d’un projet. La commande pour supprimer un fichier de toutes les branch est la suivante:

git filter-branch --index-filter 'git rm --cached (file)' HEAD

Cette opération est utile quand vous avez besoin de détruire des informations sensibles ou confidentielles que vous pourriez avoir dans votre dépôt.

Recent Posts

Shaka Ponk : les raisons de l’arrêt du groupe

Shaka Ponk, le groupe de rock électro-punk français, a annoncé sa décision de se séparer…

5 mois ago

Marine Le Clézio : « Votre corps me parle », un spectacle à ne pas manquer !

Rue de l'info est tombé sous le charme d'une artiste  hors pair qui sera au…

6 mois ago

Découvrez l’Interface de Chatbot RAG : Améliorez l’Expérience Éducative avec l’IA

Introduction L'intelligence artificielle (IA) transforme le monde à une vitesse fulgurante, et l'éducation ne fait…

8 mois ago

Houlfest #3 : Emenya de retour en concert le 4 mai !

La ville de Thury Harcourt, nichée au cœur du Calvados, se prépare à accueillir un…

8 mois ago

Développez avec Angular et Docker : Découvrez ng-starter-app

Dans le monde en constante évolution du développement web, Angular s'impose comme un framework incontournable…

9 mois ago

Développez Rapidement des Applications Nuxt.js avec Docker : Découvrez le Starter Kit

Dans l'univers du développement web, la rapidité et l'efficacité sont clés pour transformer une idée…

10 mois ago