最近在修改项目子模块的时候遇到问题,因为对git也是了解不多,所以磕磕绊绊搞定了,因此记录下来,希望后来人少踩坑。
删除&添加submodule分为几个步骤:
- 直接删掉子模块
$ rm -rf sub_folder
- 到.git文件夹下大扫除(删掉所有相关的东西咯)
$ cd .git
$ vim config
删掉submodule信息
$ cd modules
$ rm -rf *
注意一定要慎重!千万别敲错了,或者可以到文件夹手动删除,防止敲错误删
$ cd ../..
- 继续清理
如果直接add子模块,会提示'sub_folder already exists in the index'
,所以需要
$ git rm --cached sub_folder
然后可以确认一下
$git ls-files --stage www/topsdk
如果提示Please stage your changes to .gitmodules or stash them to proceed
直接删掉.gitmodules文件即可
$ rm ./gitmodules
- 这时候就可以进行add操作了
$ git add remote_repo sub_folder_path