加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Composer依赖与composer.json文件中的细微差别

发布时间:2020-12-14 05:01:46 所属栏目:百科 来源:网络整理
导读:我正在创建一个可以在同一软件的两个单独版本上运行的应用程序.这些框架将具有完全不同的模块,并且与我构建的 JavaScript框架具有共享依赖性. 让我们说吧 dave/version1dave/version2 两者都通过要求共享依赖 dave/framework 我想在两个父模块都需要的存储库
我正在创建一个可以在同一软件的两个单独版本上运行的应用程序.这些框架将具有完全不同的模块,并且与我构建的 JavaScript框架具有共享依赖性.

让我们说吧

dave/version1
dave/version2

两者都通过要求共享依赖

dave/framework

我想在两个父模块都需要的存储库中维护这个框架(dave / framework).但是,这些框架文件需要放置的位置在两个模块之间略有不同,同时对composer.json文件的要求略有不同,以确保所有内容都能正确移动(这两个版本的软件实现了编辑器的不同).

凭借我对作曲家和Git的有限知识,我制定了几个解决方案:

>创建三个存储库,两个包含特定composer.json文件的包装存储库,以支持每个不同版本的软件.另一个依赖于包含实际框架的第三个存储库.我不确定这是否会在理论之外起作用.最后也有点乱.
>使用某种形式的聪明标记,并且版本1和版本2依赖于框架的不同版本,而这些版本的构成略有不同.然后,Composer将努力拉动最新版本的模块,因为我们将在奇怪的版本中运行两个如此略微不同的代码库.

然而,这些似乎都可能是凌乱的,并且构造我想要实现的东西的方式也不正确.

有没有一个很好的方法来实现这一目标?或者我最好为框架维护两个单独的存储库?

解决方法

通过一些正确的计划,您的第一个选择将比您想象的更容易.

Git有一个名为Submodules的系统.

Version1和Version2 repos将在其中包含Frameworks repo.然后,当您更新Framework时,您可以在Version1 / 2中提取这些更新没有问题.您可以控制何时以及如何操作,因此您可以确保不会在路上引入错误.

以下是子模块的一些文档:https://git-scm.com/book/en/v2/Git-Tools-Submodules
https://git-scm.com/docs/git-submodule

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读