我想添加一些git子模块。
我已经收到了两个共享一些公共代码的项目。共享代码只是复制到两个项目中。我为公共代码创建了一个单独的git repo,并将其从项目中删除,计划将其作为git子模块添加。
我使用了git子模块add的路径选项来指定文件夹:
git submodule add url_to_repo projectfolder
但随后出现了错误:
'projectfolder' already exists in the index"
这是我的存储库所需的结构:
repo
|-- projectfolder
|-- folder with common code
可以直接在repo中添加git子模块,或者添加到那里的新文件夹中,但不能添加到项目文件夹中。问题是,它真的需要在项目文件夹..
对此我能做什么,我对git子模块add的路径选项有什么误解?
我也有同样的问题,经过几个小时的寻找,我找到了答案。
我得到的错误是有点不同:<path>已经存在,不是一个有效的git回购(并添加到这里的SEO值)
解决方案是不创建存放子模块的目录。该目录将作为git子模块add命令的一部分创建。
此外,参数应该相对于父-repo根目录,而不是您的工作目录,所以要注意这一点。
上述例子的解决方案:
这是可以让你的父回购已经克隆。
确保common_code目录不存在。
cd回购
git子模块添加git://url_to_repo projectfolder/common_code/(注意后面需要斜杠)
理智恢复。
我希望这能帮助到一些人,因为在其他地方找到的信息很少。
我也有同样的问题,经过几个小时的寻找,我找到了答案。
我得到的错误是有点不同:<path>已经存在,不是一个有效的git回购(并添加到这里的SEO值)
解决方案是不创建存放子模块的目录。该目录将作为git子模块add命令的一部分创建。
此外,参数应该相对于父-repo根目录,而不是您的工作目录,所以要注意这一点。
上述例子的解决方案:
这是可以让你的父回购已经克隆。
确保common_code目录不存在。
cd回购
git子模块添加git://url_to_repo projectfolder/common_code/(注意后面需要斜杠)
理智恢复。
我希望这能帮助到一些人,因为在其他地方找到的信息很少。