在许多存储库中复制的Git子目录

在许多存储库中复制的Git子目录,git,Git,在我的论文中,我有一个Git存储库repo_0,其中包含许多子目录。比如: thesis/ .git/ data/ experiments/ papers/ algorithm_1/ algorithm_2/ 我是唯一可以访问存储库的人。然而,我想与更多的人分享算法1和算法2,以便他们最终能够做出贡献 如何将algorithm_1/和algorithm_2/链接到它们自己的存储库repo_1和repo_2,同时将它们也保存在repo_0中 一个简

在我的论文中,我有一个Git存储库
repo_0
,其中包含许多子目录。比如:

thesis/
    .git/
    data/
    experiments/
    papers/
    algorithm_1/
    algorithm_2/
我是唯一可以访问存储库的人。然而,我想与更多的人分享
算法1
算法2
,以便他们最终能够做出贡献

如何将
algorithm_1/
algorithm_2/
链接到它们自己的存储库
repo_1
repo_2
,同时将它们也保存在
repo_0

一个简单的解决方案是从
repo0
中取出算法并维护三个存储库,但我正在寻找一个更懒惰的解决方案,其中:

  • 如果我在
    repo\u 0
    中提交,则
    算法中的更改将传播到
    repo\u n
    repo\u 2
  • 如果我在
    repo_1
    中提交,更改将传播到
    repo_0

您认为最接近的解决方案是什么?

您需要的是一个子模块


这是一个很好的例子。您将每个存储库视为它们自己的回购(维护三个回购),但本质上具有到您的回购中的特定提交到其他回购的“软链接”。这就好像子模块是远程存储库,但您将本地副本保存在repo_0中一样

查看这个主题