如何将Git存储库的子目录作为新的Git存储库发布给外部用户?
我有一个Git存储库~/repo.git
;它有子目录~/repo.git/sub1
和~/repo.git/sub2
。我现在需要向一组朋友发布/导出/发布(或任何适当的动词)sub1
,以便他们可以在sub1
中查看和使用程序和数据。如果他们可以将我在repo.git
内完成的更新推送到此公开的sub1
,那就太好了。
这对此有什么好的解决方案?
答案 0 :(得分:2)
git subtree
命令可用于执行此操作。
文档位于git-subtree.txt
。
答案 1 :(得分:0)
我会使用子模块来管理这种关系。它们捕获您正在使用的确切版本。您可以使用过滤器分支从此repo的克隆中删除您的专用分支。然后只需删除repo中的该目录,并添加指向刚刚创建的新repo的子模块。