我在本地机器上有几个项目。创建了一个超级项目,并将不同文件夹中的项目作为子模块添加进去。所有子模块文件都被复制到了超级项目中。文件.gitmodules包含本地url。如果我尝试推送超级项目,我看不到我的子模块文件。
我如何能够推送带有子模块文件(而不是提交)的超级项目到Github上?
P.S. 我想单独处理这些项目并将它们发布为一个仓库。感谢您的答案!
我在本地机器上有几个项目。创建了一个超级项目,并将不同文件夹中的项目作为子模块添加进去。所有子模块文件都被复制到了超级项目中。文件.gitmodules包含本地url。如果我尝试推送超级项目,我看不到我的子模块文件。
我如何能够推送带有子模块文件(而不是提交)的超级项目到Github上?
P.S. 我想单独处理这些项目并将它们发布为一个仓库。感谢您的答案!
git rm --cached submodule_path # delete reference to submodule HEAD (no trailing slash)
git rm .gitmodules # if you have more than one submodules,
# you need to edit this file instead of deleting!
rm -rf submodule_path/.git # make sure you have backup!!
git add submodule_path # will add files instead of commit reference
git commit -m "remove submodule"
附注:我希望将项目分开工作并将它们发布为一个仓库。谢谢答复!
如果子模块的仓库在GitHub上,GitHub会自动将它们链接起来,即您可以单击名称或提交以转到该仓库在GitHub上的页面。
git submodule deinit yourSubmoduleName
git rm --cached yourSubmodulePath
git add yourSubmodulePath
git commit -m "Remove submodule, add submodule files"
关于 "如何移除Git子模块",请在此处查看更多信息。