Supprimer un fichier du dernier commit

Beginner

This tutorial is from open-source community. Access the source code

Introduction

Git est un puissant système de contrôle de versions qui permet aux développeurs de suivre les modifications de leur base de code. L'une des tâches courantes dans Git est de supprimer un fichier du dernier commit. Cela peut être utile lorsque vous avez accidentellement ajouté un fichier au dernier commit que vous n'auriez pas dû inclure.

Supprimer un fichier du dernier commit

Vous avez ajouté un fichier au dernier commit que vous n'auriez pas dû inclure. Vous voulez supprimer le fichier du dernier commit sans modifier son message.

Pour cet exercice, utilisons le référentiel de https://github.com/labex-labs/git-playground. Supposons que vous ayez un référentiel Git nommé git-playground avec un fichier nommé file2.txt que vous avez accidentellement ajouté au dernier commit. Voici les étapes pour supprimer le fichier du dernier commit :

  1. Clonez le référentiel, accédez au répertoire et configurez l'identité :
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "votre-nom-d'utilisateur"
git config --global user.email "votre-adresse-email"
  1. Utilisez git rm --cached <fichier> pour supprimer le <fichier> spécifié de l'index :
git rm --cached file2.txt
  1. Utilisez git commit --amend pour mettre à jour le contenu du dernier commit, sans modifier son message :
git commit --amend --allow-empty

Si le commit est un commit vide après la suppression du fichier, utilisez --allow-empty, sinon vous pouvez le laisser de côté.

Après avoir exécuté ces commandes, le fichier file2.txt sera supprimé du dernier commit sans modifier son message.

Voici ce qui se passe lorsque vous supprimez file2.txt du contrôle de version Git :

Sur la branche master

Changements à commettre :
(utilisez "git restore --staged <fichier>..." pour annuler le prélèvement)
supprimé : file2.txt

Fichiers non suivis :
(utilisez "git add <fichier>..." pour inclure dans ce qui sera commis)
file2.txt

Résumé

Supprimer un fichier du dernier commit peut être une compétence utile lorsqu'on travaille avec Git. En utilisant les commandes git rm --cached <fichier> et git commit --amend, vous pouvez facilement supprimer un fichier du dernier commit sans modifier son message.