我目前正在开发一个名为X
的存储库,该存储库可在我的私人Packagist上使用,这是生产版本。但是,出于开发速度的原因,我正在使用同一项目的本地存储库,使用符号链接/联接。
类似于这样:
"repositories": [
{
"type": "path",
"url": "../plataform"
}
],
"require": {
"project/x": "dev-master"
},
但是当我提交对这个composer.json
的更改时,我总是需要修改它以纠正存储库(删除repositories
键并将dev-master
修改为当前版本);
我的疑问是:是否可以创建某种本地覆盖?我的意思是,一种方法是包含一个存在于本地但不存在于远程(生产服务器)的可选文件,该文件将在不需要一直编辑它之前提交所有工作。
伪代码示例:
正式提交应该有如下内容:
"require": {
"project/x": "~1.0"
},
"overrider": "composer.local.json"
如果存在overrider
文件,则它将被composer
自己合并。
composer.local.json
文件应该像这样:
{
"repositories": [
{
"type": "path",
"url": "../plataform"
}
],
"require": {
"project/x": "dev-master"
}
}