【发布时间】:2020-01-08 10:16:28
【问题描述】:
我有多个开发环境,其中一个本地包含我的包的源代码,另一个没有。我想单独配置我的环境,但我也想让 composer 知道它应该使用我的本地包(如果存在),并使用 packagist 版本作为后备。
我尝试在网上寻找这种东西,但我找不到直接的答案。我已经知道如何要求本地包,但我不知道如何可选地要求本地包。
重申一下,我想像这样要求我的包:
"require": {
"php": "^7.1.3",
/* ... */
"my-namespace/my-package": "dev-master",
},
并且能够以某种方式列出这个包,因为有时在本地可用。如果我这样做:
"repositories": [
{
"type": "path",
"url": "./path/to/my/package"
},
]
我可以在本地要求它,但这意味着在我的其他开发环境中(本地不存在该包,我也不希望它存在),composer 将无法要求我的包。
一旦说完,我希望我的本地环境(我的包在本地托管的那个)需要包的本地版本,我希望我的其他环境(本地没有我的包的那个)托管) 来要求包的 packagegist 版本。
有什么想法吗?
【问题讨论】:
-
@EternalHour 此问题与您引用的问题不重复。您引用的问题涉及仅在某些环境中安装某些软件包的“--dev”和“--no-dev”标志。对于这个问题,我希望将包安装在两个环境中,但我希望包的来源不同,具体取决于包的本地副本是否存在。
标签: php composer-php