如何将git repo中的特定文件夹添加为git子模块?

如何将git repo中的特定文件夹添加为git子模块?,git,git-submodules,Git,Git Submodules,我有一个git回购协议,我想在其中添加一个子模块。问题是,子模块作为文件夹存在于另一个repo中。我是否可以仅将该文件夹添加为子模块?如果您确实需要在自己的回购历史记录中包含其他存储库的一部分,则子模块比子模块更合适 但在这两种情况下,完整存储库都链接到您的回购,而不仅仅是一个目录。 和 您可以尝试在它自己的存储库中添加,然后将其作为子模块添加,但这意味着它的历史将与最初的回购完全分离。我最终做了以下工作: 创建一个子模块目录 在此目录中添加子模块 创建子模块内特定目录的符号链接 这样,您就有了

我有一个git回购协议,我想在其中添加一个子模块。问题是,子模块作为文件夹存在于另一个repo中。我是否可以仅将该文件夹添加为子模块?

如果您确实需要在自己的回购历史记录中包含其他存储库的一部分,则子模块比子模块更合适

但在这两种情况下,完整存储库都链接到您的回购,而不仅仅是一个目录。

您可以尝试在它自己的存储库中添加,然后将其作为子模块添加,但这意味着它的历史将与最初的回购完全分离。

我最终做了以下工作:

  • 创建一个
    子模块
    目录
  • 在此目录中添加子模块
  • 创建子模块内特定目录的符号链接
  • 这样,您就有了默认的Git子模块行为,并且在您的项目中,您只使用整个子模块的一个子集

  • 创建新分支
  • 将所需文件移动到新分支
  • 将子模块添加到超级存储库
  • 将子模块签出到新分支

  • 我在中找到了一个对我有用的解决方案:嗯,我不知道这是否能与我的Windows开发人员一起使用,但我们将尝试并使用它tell@CaptainMan如果您使用“启用符号链接”权限安装GitBash,这一点就可以实现!杰出的除antora/AscidActor不支持符号链接外:(