git reset --soft HEAD~1
sollte das tun, was Sie wollen. Danach werden Sie die ersten Änderungen im Index haben (sichtbar mit git diff --cached
), und Ihre neuesten Änderungen nicht inszeniert. git status
sieht dann wie folgt aus:
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: foo.java
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: foo.java
#
Sie können dann git add foo.java
und übertragen Sie beide Änderungen auf einmal.