Git:需要一个修订错误

时间:2014-10-03 07:17:00

标签: git

我在我的项目中初始化了一个新的git,到目前为止我只有两个提交。我的日志如下所示

git log
commit e515e5b8dcbd8f1ea4a7a7d4a1efb82a1a0aee7a
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:04:20 2014 +0300

    Temp commit

commit 71781bf0a7807351a56d5155dac94169ea700527
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:01:42 2014 +0300

    First Commit

当我尝试重新提交此提交时,我会收到如下错误

git rebase --interactive HEAD~2
fatal: Needed a single revision
invalid upstream HEAD~2

我在google上进行了很多研究,但直到现在我还没有找到解决方案。

2 个答案:

答案 0 :(得分:147)

在您的情况下,没有HEAD~2,因为您只有2次提交,因此出现“Needed a single revision”错误消息。
尝试:

 git rebase -i --root

请参阅“Change first commit of project with Git?

了解更多信息

答案 1 :(得分:5)

这不适用于您的情况,但可能对其他人有帮助。如果在Linux上,请确保HEAD大写。如果你使用小写的head,就像下面的第一个例子一样(因为你习惯于在Windows或Mac上工作而那些允许小写head),你会得到fatal: Needed a single revision错误!

或者您可以使用@作为HEAD的别名,然后您就不必担心忘记将其大写。

# wrong on linux
git rebase --interactive head~2

# correct on linux
git rebase --interactive HEAD~2

# correct on all
git rebase --interactive @~2