我在我的项目中使用Composer包Omnipay,我想向包中添加一个新类(在我的情况下,它支持新的支付网关)。命名不与任何东西冲突,它遵循与同级文件夹相同的命名和结构约定。但是,当我运行composer update
它时,它会删除我的整个更改文件夹,即使它不需要。有没有办法告诉作曲家不要删除该目录?
问问题
143 次
2 回答
0
据我所知,您不能添加到 Composer 包中,因为它是外部的,因此不受您的控制。您应该仅将包视为库,并将所有类添加到您自己的项目中,确保您需要的包仍然设置在您的 .json 文件中
于 2013-07-11T17:08:59.467 回答
0
把所有东西都放在/vendor
一边,不要在那里更改任何文件。您应该将库视为外部依赖项 - 不要将它们签入源代码控制或以任何方式更改它们。只需在您自己的代码中引用它们即可。
如果你需要自定义一个 composer 库,你可以在你自己的代码中解决它(大多数 PHP 库支持依赖注入,这将允许你覆盖任何库的类),或者你可以在 github 上 fork 库,然后引用你自己的 fork composer.json
,或者提交 pull request 以便每个人都可以从中受益。
于 2013-07-12T22:56:25.143 回答