GIT - 无法压缩提交:致命:需要单个修订

GIT - cannot squash commits : fatal: Needed a single revision

我正在尝试用 git 压缩我的最后 2 次提交。 在这个例子中,我从另一个名为 develop 的分支创建了一个分支,我有 3 个新提交,这是 git 日志:

commit a350cf6071db1bcaa2a37710a61508565a34d917
Author: tibbus
Date:   Tue Sep 6 11:49:19 2016 +0200

    commit message #3

commit 8c0384b995831e5a62b423721434005788b2eb63
Author: tibbus
Date:   Tue Sep 6 11:49:01 2016 +0200

    commit message #2

commit 6eab9df2df71196d62dab3c6caed9cd0ac6aeee5
Author: tibbus
Date:   Tue Sep 6 11:48:41 2016 +0200

    commit message #1
...
more commits from develop...

所以我想将提交 #3 和提交 #2 合并为一个提交,我尝试:

git rebase -i HEAD˜2

我收到这个错误:

fatal: Needed a single revision
invalid upstream HEAD˜2

如果我这样做:

git rebase -i develop

工作正常,但我不想压缩所有 3 次提交,我只想要最新的 2 次。我读到当你没有足够的提交时会出现这个错误,但我肯定有¯_(ツ)_/¯

您使用了错误的 ~ 符号。 ~ 在你的命令中是 the small tilde non-ASCII character, whereas you need the regular tilde ASCII 符号。您是从某处复制的还是键盘上的 ~ 插入 ˜?

从我的答案中复制并粘贴命令,它应该可以正常工作:

git rebase -i HEAD~2

检查您的 tilda (~)。似乎是不同的 ASCII,因此 git 命令行要求修改。