对于我们的自定义内容管理系统,我们将所有内容提取到不同的模块中,包括用户系统、角色管理器、页面编辑器、主题系统等。
首先,系统需要其中的几个才能运行。
所以我们的composer.json已经有了大约15个不同的“需求”。
现在,我想知道的是,创建一个umberella包是不是一个更好的主意,这个包本身不包含任何东西,但它需要所有不同的部分。
因此,与其有15种不同需求,我们只需
{
"require": {
"cms/core": "1.0.*"
}
}不利的一面是,我认为,如果每次更新保护伞下的任何包,我们都必须更新保护伞包的版本,这意味着虽然框架中最高的部分可能只有2.7.34,但保护伞很可能是26.12.116或类似的版本。
如果我们确实创建了一个保护伞包,我们应该如何管理呢?只是让包要求所有包都是*吗?这样做会遇到兼容性问题吗?
发布于 2013-04-30 16:03:13
如果type确实不包含任何文件,您也可以这样做,并将其设置为元包。它可能确实会让用户的生活变得更轻松。
不过,我建议您需要:为每个子包添加1.0.*,然后当您将所有内容都添加到1.1时,您将更改为1.1.*并标记一个cms/core 1.1.0。这是如果你的所有版本或多或少同步的话。
如果每个组件的版本都是独立的,那么它就会变得有点困难。在这一点上,使用~1.0需求可能是最好的。这将允许更新到2.0 (但不包括),这意味着您可以确保事情至少在一起工作。
https://stackoverflow.com/questions/16289699
复制相似问题