首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将私有存储库中的某些选定文件夹镜像为公共存储库

将私有存储库中的某些选定文件夹镜像为公共存储库
EN

Stack Overflow用户
提问于 2018-01-12 14:09:17
回答 1查看 36关注 0票数 2

在该公司,我们正在已经存在的开源版本的基础上开发企业版本的产品。

出于实际目的,我们希望在单块git存储库上提供企业版和开源版的代码库,以保持开发过程的简单。在内部,我们希望这样构造我们的代码基:

代码语言:javascript
复制
* main-repository-private
    /folder-for-open-source-edition
    /folder-enterprise-edition

然而,我们希望人们能够为开源软件做出贡献。这包括制作PRs、创建问题、分叉代码库等。

这意味着,虽然我们需要保持企业代码库的私有性,但开放源码需要放在公共存储库中。

我们可以创建两个完全独立的存储库,但是,正如我已经说过的,这使得开发变得很困难,因为开放源码上经常会发生变化,这可能会影响企业,因为前者是由后者依赖的。

这就是我们想要做的事情,但我们不确定这在技术上是否可行:

我们能否创建一个主存储库(私有),并将该存储库中的一个或多个选定文件夹镜像到公共存储库中?

代码语言:javascript
复制
* main-repository-private
    /folder-for-open-source-edition
    /folder-enterprise-edition

* open-source-repository-public --> mirrors "main-repository-private/folder-for-open-source-edition"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-12 14:19:48

我的建议是为企业版创建一个私有存储库。为开源版本创建另一个公共存储库。将私有存储库中的子模块添加到开源版本存储库中。

通过这种方式,您可以决定何时将企业版本升级到开源版本中的新版本,并在企业版的相同目录结构中使用开源版本的源代码。

在进行此操作之前,一定要研究子模块是如何工作的,这样您就知道如何处理子模块了。简而言之,它只是另一个存储库中的一个存储库,指出将从哪个提交子模块回购源。您可以在该子模块目录中工作,就像在另一个存储库中一样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48227957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档