【发布时间】:2023-03-29 18:39:01
【问题描述】:
我有一个 git repo,我想向它添加一个子模块。问题是,子模块作为另一个 repo 中的文件夹存在。我可以只将该文件夹添加为子模块吗?
【问题讨论】:
-
我在 SO 中找到了一个对我有用的解决方案:stackoverflow.com/questions/9035895/…
标签: git git-submodules
我有一个 git repo,我想向它添加一个子模块。问题是,子模块作为另一个 repo 中的文件夹存在。我可以只将该文件夹添加为子模块吗?
【问题讨论】:
标签: git git-submodules
我最终这样做了:
submodules 目录。这样你就有了默认的 Git 子模块行为,并且在你的项目中你只使用了整个子模块的一个子集。
【讨论】:
如果您确实需要在自己的存储库历史记录中包含其他存储库的一部分,那么subtree merge strategy 比子模块更合适。
但在这两种情况下,完整的存储库都链接到您的存储库,而不仅仅是一个目录。
还有partial cloning is not possible。
您可以尝试将 isolate that directory 放在它自己的存储库中,然后将其添加为子模块,但这意味着它的历史将与它最初来自的存储库完全分开。
【讨论】:
Also, in case you make changes to the other project, it is easier to submit changes if you just use submodules.
【讨论】: