我很清楚我不能这样做:
git submodule add -f git@github.com:thephpleague/oauth2-server.git libs/OAuth/functions正因如此:
'libs/OAuth/functions'已经存在,并且不是有效的git回购。
我只是不明白。它不存在于任何地方。是否有另一个git配置文件隐藏在我的计算机上,我不知道什么?我试着删除、.git、和,然后再一次将的所有内容都拉出来,但是没有做任何事情。有什么想法吗?
我也试过这个:
git ls-files --stage functions当我在libs/OAuth里面的时候,我什么都没有。
然后我试了一下:
sudo git rm --cached functions我发现了一个错误:
fatal: pathspec 'functions' did not match any files我也试过这个:
sudo git rm -r --cached functions并得到了同样的错误。
发布于 2014-07-07 05:55:28
即使文件夹不存在,也要检查索引状态:
cd libs/OAuth
git ls-files -- functions如果在索引中注册了一个条目,那么在能够将您的子模块添加到子模块之前,您需要删除它。
(如“Issue with adding common code as git submodule: “already exists in the index””中所解释)
所有这些都假设您位于当前克隆的回购的根文件夹,它将充当您要声明的任何子模块的父级回购。
发布于 2015-05-20 11:55:43
如果其他人和我有类似的情况,因为我是因为一个愚蠢的原因而苦苦挣扎:
检查该文件是否由于任何原因不存在(我之前添加了一个失败的git子模型)
因此,在问题rm的上下文中,文件:
rm -rf libs/OAuth/functions然后尝试重新添加
发布于 2020-11-14 15:45:11
如果您多次尝试添加子模块,但失败了,则在尝试正确添加子模块时可能会导致错误。
首先,确保要向添加子模块的dir不退出。
其次是,检查您的.git dir。我在..git/模块/中留下了多个dir,这会导致问题。
在删除这些之后,我能够将子模块添加到指定的dir中,作为expexted。
https://stackoverflow.com/questions/24603563
复制相似问题