我刚刚在git中将分支合并到master时遇到了一个问题。首先,我通过运行git ls-remote
获得了分支的名称。让我们将该分支命名为" branch -name“。然后,我运行git merge branch-name
命令,得到以下结果:
fatal: branch-name - not something we can merge
如何解决此错误?
发布于 2013-06-01 01:41:29
如How does "not something we can merge" arise?所示,此错误可能是由于分支名称中的拼写错误引起的,因为您正在尝试拉出一个不存在的分支。
如果这不是问题所在(就像我的例子一样),那么很可能您没有要合并的分支的本地副本。Git需要两个分支的本地知识才能合并这些分支。您可以通过检出要合并的分支,然后返回到要合并到的分支来解决此问题。
git checkout branch-name
git checkout master
git merge branch-name
这应该是有效的,但是如果您收到一个错误,说明
error: pathspec 'remote-name/branch-name' did not match any file(s) known to git.
在检出分支之前,您需要获取远程(可能,但不一定是“源”):
git fetch remote-name
发布于 2014-01-05 09:17:49
这是一个愚蠢的建议,但请确保分支名称中没有拼写错误!
发布于 2015-08-26 04:37:47
当从远程上游拉取时,git fetch --all
为我做了这个把戏:
git remote add upstream [url to the original repo]
git checkout [branch to be updated]
git fetch --all
git merge upstream/[branch to be updated]
在其他情况下,我发现如果远程(原始,上游)分支不存在,也会出现"Not something we can merge“错误。这似乎很明显,但您可能会发现自己在只有master
的存储库上执行git merge origin/develop
。
https://stackoverflow.com/questions/16862933
复制相似问题