本地我有一个大项目的文件夹,其中包含许多子项目文件夹。
我有2个Git存储库:
Big Project Repo(bitbucket) - 包含所有子项目 - 在此repo中,我保存项目的所有源文件并排除所有已编译的文件。此repo用作源代码的备份。
Sub Project A Repo(heroku) - 嵌套在大项目的文件夹中,这是一个生产仓库,我只保存Sub Project A的编译文件并排除所有源文件。
Sub Project A Repo按预期推动,没有任何问题。
另一方面,大项目回购主要是按预期推动,除了由Gitlink引用的子项目A的文件夹,而不是保存实际文件。我想在大项目仓库中存储子项目A文件夹的实际文件,在这种情况下将子项目A视为常规文件夹而不是仓库。
有些搜索提出了git子模块,但在阅读了一些关于它们之后,我得到的印象是文件仍然不会以我想要的方式存储,它只会考虑到嵌套repo的引用时克隆大回购。嵌套的repo文件仍然不会存储在大型仓库中。
如果我说得对,请告诉我以及如何解决这个问题。
答案 0 :(得分:0)
我确认子模块不会将subrepo文件存储在父仓库中 它将使用gitlink,并在.gitmodules中添加嵌套repo的远程URL。
如果您想将嵌套的repo包含在主要的repo中:
git rm nestedRepo
(没有尾部斜杠):您需要删除gitlink ingydotnet/git-subrepo
:您将获得一个易于克隆的大型仓库,同时保留嵌套的仓库历史记录和个别更新。