J'ai récemment fait la même chose, où j'ai accidentellement commis un changement sur master, alors que j'aurais dû commettre sur other-branch. Mais je n'ai rien poussé.
Si vous venez de commettre sur la mauvaise branche, et que vous n'avez rien changé depuis, et que vous n'avez pas poussé vers le repo, vous pouvez faire ce qui suit :
// revenir en arrière sur master pour pointer vers le commit juste avant votre commit le plus récent.
// cela prend tous les changements de votre commit le plus récent et les transforme en changements non validés.
git reset HEAD~1
// sauvegarder temporairement vos changements non validés comme un commit qui n'est pas attaché à une branche en utilisant git stash
// tous les commits temporaires créés avec git stash sont mis dans une pile de commits temporaires.
git stash
// créer other-branch (si l'autre branche n'existe pas déjà)
git branch other-branch
// passer à l'autre branche sur laquelle vous auriez dû commettre.
git checkout other-branch
// prendre le commit temporaire que vous avez créé et appliquer tous ces changements à la nouvelle branche.
// Cela supprime également le commit temporaire de la pile de commits temporaires.
git stash pop
// ajouter les changements que vous voulez avec git add...
// recommettre vos changements sur other-branch
git commit -m "quelques messages..."
REMARQUE : dans l'exemple ci-dessus, j'ai annulé 1 commit avec git reset HEAD~1. Mais si vous vouliez annuler n commits, vous pouvez faire git reset HEAD~n.
Aussi, si vous avez fini par commettre sur la mauvaise branche et que vous avez également écrit quelques lignes de code avant de réaliser que vous avez commis sur la mauvaise branche, vous pouvez utiliser git stash pour sauvegarder votre travail en cours :
// sauvegarder le travail non prêt à commettre sur lequel vous êtes en train de travailler
git stash
// annuler n commits
git reset HEAD~n
// mettre en stash les changements commis comme un seul commit temporaire dans la pile.
git stash
// créer other-branch (si elle n'existe pas déjà)
git branch other-branch
// passer à l'autre branche sur laquelle vous auriez dû commettre.
git checkout other-branch
// appliquer tous les changements commis à la nouvelle branche
git stash pop
// ajouter les changements que vous voulez avec git add...
// recommettre vos changements sur la nouvelle branche en un seul commit.
git commit -m "quelques messages..."
// extraire les changements sur lesquels vous travailliez et continuer à coder
git stash pop
REMARQUE : J'ai utilisé ce site web comme référence https://www.clearvision-cm.com/blog/what-to-do-when-you-commit-to-the-wrong-git-branch/