Si vous souhaitez déplacer un commit dans la zone intermédiaire, c’est-à-dire l’engager et déplacer tous les changements qui y figuraient dans la zone intermédiaire (en réalité, placer la branche dans l’état où elle se trouvait avant le commit) comment faites-vous? Ou est-ce quelque chose que vous ne pouvez pas faire?
Le plus proche que je sache faire est de copier tous les fichiers qui ont été modifiés dans le commit vers un autre emplacement, de réinitialiser la branche sur le commit avant le commit que vous essayez de déplacer dans la zone intermédiaire, de déplacer tous les fichiers. copiez les fichiers dans le référentiel, puis ajoutez-les à la zone de transfert. Cela fonctionne, mais ce n’est pas vraiment une solution intéressante. Ce que j'aimerais pouvoir faire, c'est simplement annuler le commit et transférer son changement dans la zone intermédiaire. Cela peut-il être fait? Et si oui, comment?
git reset --soft HEAD^
Cela réinitialisera votre index à HEAD^
(le commit précédent), mais laissez vos modifications dans la zone intermédiaire.
Il y a quelques diagrammes pratiques dans le git-reset
docs
Si vous êtes sous Windows, vous devrez peut-être utiliser ce format:
git reset --soft HEAD~1
Une manière simple
Fichiers validés dans la zone de stockage intermédiaire
git reset --soft HEAD^1
Staging to UnSatge : (utilisez "git reset HEAD ..." pour décompresser)
git reset HEAD git commands.txt or git reset HEAD *ds.txt
ici, * -> tous les fichiers se terminent par ds.txt en unstage.
Reportez-vous à la photo ci-dessous pour plus de clarté: