2012-04-02 734 views
10

因此,我的工作环境在Github上只有一个分支与远程伴侣。我正在尝试执行git pull --rebase以防止git push创建合并提交消息,这些消息不会向其他人员提供有关此项目的新信息,并且只会让作品失效。但是,当我尝试这样做,它给了我这个:“git pull --rebase”导致“无法重定位到多个分支”

From https://github.com/our_profile/our_repository 
* branch   HEAD  -> FETCH_HEAD 
Cannot rebase onto multiple branches 

而拉中止。调用git branch告诉我,我的本地机器上只有一个分支,所以发生了什么?

+0

呀,和执行* '混帐拉--rebase' *第二次的作品!这是因为在第一次操作期间,git获取数据,所以远程和本地主分支开始指示相同的提交。 – 2017-04-05 16:17:26

回答

9

尝试指定你想拉什么远程分支:

git pull --rebase origin branch 

另外,您也可以git fetch一切从远程存储库首的变化,然后手动变基:

git rebase origin/branch 
+0

这几乎奏效,但最终导致了许多文件被标记为删除的问题。我必须进入git GUI来保存我对它们完成的工作。 – bourgtai 2012-04-03 23:03:38

+0

你知道为什么会出现这种情况吗? – dbn 2016-03-04 22:39:25

-2

最简单的解决方案我发现是使用TortoiseGit的上下文菜单项“Git Sync”。在这是一种方法来获取当前工作分支上的& rebase。

+0

我以为git pull默认会执行一次抓取,这是所有进入的抓取消息都很明显的。上面添加了什么? – Hazok 2013-08-07 20:37:54