php - 适当的 Composer 包 + Git 开发工作流程

标签 php testing workflow composer-php

在开发我自己的 Composer 包时,我试图弄清楚正确的开发工作流程。我了解如何创建 composer.json 并在 Packagist 上获取包。那不是问题。

假设我有一个添加到 Packagist 的简单 PHP 类。当我准备好对其进行更改(错误修复、新功能等)时,我该怎么做?

我是否只是简单地将现有包 composer install 到本地开发环境,然后直接在 vendors 目录中对我的包进行更改?如果是这样,该目录不是克隆的 git 存储库,那么我该如何提交和推送我的更改?

或者,我是否克隆到一个随机的本地目录,然后 composer install 使用 VCS 和一个指向我克隆的自定义本地存储库的开发环境混帐 repo ?如果是这样,我假设我在存储库中进行更改,而不是在本地 vendors 目录中进行更改。那么如何让我的开发环境保持更新呢?每次我在我的包中的文件中保存时,我真的必须做一次 composer update 吗?

此外,Composer 只会在发现包的版本号已更改时进行更新,因此我还必须手动编辑我的包 composer.json 并弄乱版本控制只是为了让开发环境更新。每次我点击保存时都会发生这种情况。

似乎工作流程对我来说应该更明显。我在这里错过了什么?在我的本地开发环境中使用 Composer 很重要,这样其他依赖项才能正确加载,而且我显然希望我的包保留在克隆的 git 存储库中,以便我可以推送更改。

附注- 假设我的包是非框架特定的。不特定于 Laravel 或 Symfony 等。只是一个通用的 PHP 包。

最佳答案

显而易见的答案是:

您从其版本控制系统中 check out 该包,添加您想要的错误修复或功能,提交结果并标记新版本。

为了获得最佳结果,这是单独完成的。不要假设该包周围有可用的代码基础结构。如果你想测试你的包是否提供了你想要的功能,并且不能在更大的应用程序中测试包,剩下的就是:为此编写自动化测试。或者体验编码、提交、标记、更新、测试的不愉快循环,还是坏掉……更多编码……

关于php - 适当的 Composer 包 + Git 开发工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25736161/

相关文章:

php - VPS 中的 ionCube 加载程序错误

php - 使用 CDN 进行用户图像和视频上传

php - 将 pear/xml_parser 添加到composer.json

Mercurial 每个功能工作流程,单个开发人员

object - 如何从类中访问 BOR 宏?

php - 在 Symfony 中包含样式表

python-3.x - 用sklearn分割后如何重新合并X_test和y_test以及x_train和y_train?

javascript - 在 Protractor 中定义页面对象的规范方法

c - Arduino 中的 SMS 发送/接收循环

process - 您或您公司的编程流程是什么?