来自https://git-scm.com/docs/gitnamespaces
Git支持将单个存储库的引用划分为多个名称空间,每个名称空间都有自己的分支、标记和头。Git可以将每个名称空间公开为一个独立的存储库,以便从中提取和推送,同时共享对象存储,并将所有引用公开给诸如git-gc之类的操作。
我希望通过将独立的、不相关的存储库存储在一个统一的存储库中来利用这个特性。例如,我希望为我的团队托管一个包含小型Python库的存储库,每个库都有自己的设置分支/标记。我认为我能够使用类似于git --namespace=library_n push --all unified_repo的东西将分支从各个存储库推入统一的存储库。这似乎在很大程度上运作良好。我在这里所缺少的是,在新的命名空间中没有指定的头。所以,如果我运行类似于git --namespace=library_n clone unified_repo.git local_library_n的程序,我会得到:
警告: remote HEAD指的是不存在的裁判,无法签出。
虽然新的克隆功能很好,但是在克隆之后没有立即签出的默认头,这是很烦人的。我是不是走错路了?是否有适当的方法克隆/推送到统一的回购,以便每个名称空间包含一个适当的头?
发布于 2018-09-18 04:56:41
我想为我的团队托管一个包含小型Python库的存储库,每个库都有自己的设置分支/标记。
使用子模更容易做到这一点。
您的主要回购将引用次级回购
git submodule add /url/of/lib1
git submodule add /url/of/lib2
git submodule add /url/of/lib3https://stackoverflow.com/questions/52377860
复制相似问题