首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >git rebase致命错误:需要单个修订无效的上游-i

git rebase致命错误:需要单个修订无效的上游-i
EN

Stack Overflow用户
提问于 2015-11-25 08:13:11
回答 2查看 76.3K关注 0票数 55

我正试图把几个提交一起浪费掉。当我使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git rebase –i HEAD~8

我得到了致命的一击:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fatal: Needed a single revision
invalid upstream –i

以下是提交日志的一部分:git log

对应的Github存储库的所有提交历史记录都在这里:https://github.com/yikouniao/YukiLog/commits/master

Edit1:

当我使用git rebase –i HEAD~2时,我得到了同样的结果。

Edit2:

我不知道我已经修改了文件.gitconfigeditor = notepad2被添加到了文件中。删除editor = notepad2之后,一切都正常了。然后,我成功地更改了基数并浪费了8个提交。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-25 08:15:03

有几个选项:

  • 您不在分支(Detached head)上,或者您正在尝试rebase或尝试访问错误的分支。

签出您要rebase的分支,然后重试。

  • 您的历史记录中没有8次提交(您有7次或更少)

git rebase -i --root

  • try

下面是关于--root标志的文档,以及为什么它可以为您工作。

--root

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Rebase all commits reachable from <branch>, instead of limiting them with
an <upstream>.This allows you to rebase the root commit(s) on a branch.  
When used with --onto, it will skip changes already contained in `<newbase>`   
(instead of `<upstream>`) whereas without --onto it will operate on every 
change. When used together with both --onto and --preserve-merges, all root 
commits will be rewritten to have `<newbase>` as parent instead.`
票数 101
EN

Stack Overflow用户

发布于 2018-01-12 02:37:28

问题出在-i中的破折号,它是一个短划线(U2013)而不是一个连字符(U002D)。我通过复制你的dash并在http://unicode.scarfboy.com上查找来确认这一点。改为-i。

线索是错误消息"invalid upstream -i“。Git没有将您的-i识别为标志,而是将其解释为上游参数。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33911379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文