Вторая редакция:
git reset --soft HEAD^ (to undo your commit)
git stash (to stash away your changes)
git reset --soft HEAD^ (to undo the merge commit from X)
git stash (stash away X)
git stash apply stash@{1} (apply your changes)
git add . (add and commit and push ..)
git commit -m "some changes"
git push
git stash apply stash@{0}
Исправленный ответ:
Хорошо, тогда вам нужно сбросить еще один шаг назад в истории:
git reset --soft HEAD^ (to undo your commit)
git stash (to stash away your changes)
git reset --hard HEAD^ (to undo the merge commit from X)
git stash apply (apply your changes)
git add . (add and commit and push ..)
git commit -m "some changes"
git push
git merge featureX (re merge the changes from X)
Оригинальный ответ:
Вы можете сбросить свою голову, чтобы ваш коммит был перемещен в индекс:
git reset --soft HEAD^
Теперь git будет в состоянии объединенного кода и ваших измененийбез обязательств и готов к постановке снова.Теперь вы можете спрятать эти изменения:
git stash save "stashing commit for changes from X"
Теперь вы можете сдвинуть объединенные изменения из X и после этого применить тайник, добавить и зафиксировать:
git push
git stash apply
git add .
git commit -m "some stuff"