无法在子模块路径

时间:2016-12-06 04:28:29

标签: git git-submodules

在我的项目(使用git)中,我需要使用仍在进行中的a library。我决定为该库创建一个子模块,因为我想不时更新它的最新版本(我不打算在那里进行自己的更改)。

我做了:

git submodule add https://github.com/mb21/JSONedit.git
git commit -am 'added JSNedit submodule'
git push -u origin master
git pull origin master

然后,我确实在我的本地文件夹中看到了JSONedit文件夹,并在我的git文件夹中看到了一个链接。但是当我git submodule update --remote JSONedit/时,我收到了以下错误:

fatal: Needed a single revision
Unable to find current origin/master revision in submodule path 'JSONedit'

有谁知道这里有什么问题?

3 个答案:

答案 0 :(得分:17)

git pull --recurse-submodules

在主存储库中运行它应该可以解决问题。

或者,您可以git checkout在子模块内部从中拉出的分支,然后运行git pull

结果应该是一样的。

答案 1 :(得分:4)

这个问题似乎已经解决了这个问题: Git submodules - pulling into a new clone of the super project。 总之,你应该尝试:

# rm -rf JSONedit
# git submodule update

答案 2 :(得分:1)

我遇到了同样的问题。它解决了。存储子模块的文件夹就在那里。当我手动删除文件夹时,它已得到解决。