Supprimer les commits locaux dans Git

John Wachira 21 décembre 2022
Supprimer les commits locaux dans Git

Cet article discutera des étapes pour annuler les commits locaux. Nous verrons comment supprimer un seul commit vers plusieurs commits dans Git.

Supprimer les commits locaux dans Git

Nous discuterons de la manière de supprimer les derniers commits de votre référentiel local pour lancer les choses.

Nous utilisons généralement la commande git reset pour supprimer les dernières modifications apportées à notre référentiel. Si vous souhaitez supprimer le dernier commit, utilisez la commande ci-dessous.

git reset --hard HEAD~1

L’argument HEAD~1 supprimera un commit.

Nous pouvons utiliser un argument N-ième, comme indiqué ci-dessous.

git reset --hard HEAD~N

Si vous souhaitez supprimer les cinq derniers commits de votre référentiel, remplacez N par votre valeur.

Nous pouvons supprimer un commit spécifique avec la commande ci-dessous.

git reset --hard <sha1-commit-hash>

Historique des commits

Utilisez votre équivalent de ce qui précède dans la commande.

Si vous souhaitez annuler les modifications apportées par un commit situé entre votre historique de commit, utilisez la commande git revert. Cette commande annulera les modifications apportées par le commit sélectionné.

git revert <sha1-commit-hash>

Cependant, git revert ne supprimera pas le commit. Nous utilisons le git rebase dans le formulaire interactif.

git rebase -i <sha1-commit-hash>

Vous verrez un éditeur avec une liste des commits environnants après avoir exécuté la commande ci-dessus. Vous pouvez taper drop au début pour supprimer le commit que vous voulez.

Si vous souhaitez appliquer les modifications à votre référentiel distant, exécutez la commande ci-dessous.

git push --force-with-lease origin HEAD

La commande ci-dessus n’affectera pas les modifications apportées par d’autres développeurs dans le référentiel distant. C’est une option plus sûre pour la commande git push origin HEAD --force qui écrase toutes les modifications apportées par d’autres développeurs dans un référentiel distant.

Si vous souhaitez rétablir vos modifications locales à l’état actuel de votre référentiel distant, exécutez la commande ci-dessous.

git reset --hard origin/<branch_name>

Vous pouvez retrouver un commit supprimé avec la commande git reflog.

Auteur: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Article connexe - Git Reset

Article connexe - Git Revert