我刚刚遇到了一个问题,合并一个分支到主git。首先,我通过运行git ls-remote来获得分支名称。我们称这个分支为“branch-name”。然后我运行git merge branch-name命令,得到如下结果:

fatal: branch-name - not something we can merge

如何解决此错误?


当前回答

我今天有这个问题,当我将另一个分支合并到我的直接从主后,我必须先签出并拉出我合并的分支,然后我才能成功地将这个分支合并到我的分支中。

git checkout branch-to-merge
git pull
git checkout my-branch-name
git merge branch-to-merge

其他回答

这可能是因为该分支不在您的本地。合并使用前

git fetch origin

对我来说,问题是“双引号”合并消息。所以当我去掉双重标记时,一切都神奇地起作用了。我希望能帮助别人。(抱歉我的英语不好)

这个答案与上面的问题无关,但我遇到过类似的问题,也许这对别人有用。我试图合并我的特征分支,如下所示:

$ git merge fix-load

为此得到了以下错误消息:

合并:固定加载-不是我们可以合并

我研究了所有的解决方案,但并不是所有的都有效。

最后,我意识到问题的原因是我的分支名称的拼写错误(实际上,合并分支名称是fix-loads)。

如果您正在使用旧的教程,请检查分支是否命名为main或类似的名称,而不是master。

这个错误告诉您branch-name必须是您的一个分支的名称。

对我来说,当我尝试这样做时,问题出现了:

git merge -s ours --no-commit --allow-unrelated-histories <remote name>/develop

所以实际上我应该写master而不是develop,因为master是Subtree的分支名,而不是我实际的分支名。