php - Composer 和第三方错误

标签 php git symfony composer-php

在开发 Symfony2 项目时,我经常遇到第三方包中的错误。大多数时候,这些错误很微妙,但很难找到。例如,仅在本周我就发现了三个错误,其中使用简单的 if ( $value ) 构造测试了一个值,但需要使用 ( $value !== null)( $value !== false )

在相关项目的相关 github 页面上没有足够的权限,我能做的最好的事情就是推送一个 pull 请求。 merge 请求通常需要相当长的时间。同时,特别是在使用 master 版本时, merge 其他 pull 请求,从而导致 composer 进行更新。发生这种情况时,任何本地错误修复都将恢复为原始代码。

有什么方法可以处理这种情况吗?

理想情况下,我希望第三方包能够更新,但我的修改仍然存在。当然,直到 pull 请求被 merge 。

最佳答案

有一个项目允许您在使用 composer 下载包后应用补丁。它是为与 Drupal 项目一起使用而创建的,但我相信它也应该与您自己的补丁一起使用。

https://github.com/jpstacey/composer-patcher

否则,您可以 fork 项目、进行改进、提交 pull 请求,同时在 composer 中使用您自己的 fork 存储库。请参阅[此答案][ https://stackoverflow.com/a/14637668/3492835 ) 以获得有关如何实现该目标的详细说明。

编辑:
明星们说现在快到 2016 年了,有些事情发生了变化。 jpstacey/composer-patcher 被认为已弃用,取而代之的是 netresearch/composer-patches-plugin项目。这是一个 Composer 插件,功能基本相同,但它也能够应用本地补丁。

关于php - Composer 和第三方错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27922782/

相关文章:

php - 我的分析器工具栏未显示在 symfony 4.3.1 中

php - 使用 Rest POST 将数据从 angularjs 表单发送到 symfony2

symfony - Heroku 可信代理

php - 有没有办法让 PHP 检测到损坏的图像?

php - Guzzle HTTP客户端多线程下载文件 : EachPromises vs Pool objects

linux - 我可以提供我的裸 git 存储库吗?

ruby-on-rails - 在 Capistrano 中部署 Git 子目录

android - git克隆后的Gradle错误

php - Behat with PhpStorm 不显示异常的堆栈跟踪

php - 查询中的 kohana 引号