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

时间:2016-09-06 09:58:06

标签: git git-rebase git-squash

我正试图用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次。我已经读过,当你没有足够的提交时会出现这个错误,但我肯定有__(ツ)_ /¯

2 个答案:

答案 0 :(得分:1)

您使用的是错误的~符号。 〜在您的命令中是the small tilde非ASCII字符,而您需要常规的tilde ASCII符号。您是从某处复制过的,还是键盘上的~插入了˜

复制并粘贴我的答案中的命令,它应该没有任何问题:

git rebase -i HEAD~2

答案 1 :(得分:1)

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