我正在尝试找出在开发自己的Composer包时的正确开发工作流程。我知道如何创建一个
假设我有一个简单的PHP类已经添加到Packagist中。当我准备对其进行更改(修复错误、添加新功能等)时,我该怎么办?
我是直接使用
还是我需要将repo克隆到一个随机的本地目录,然后使用
此外,Composer只会在看到包的版本号已更改时才会执行更新操作,所以我还必须手动编辑我的包的
对我来说,工作流程似乎应该更为显然。我错过了什么?在我的本地开发环境中使用Composer很重要,这样其他依赖项才能正确加载,并且我显然希望我的包保持在克隆的git存储库中,以便我可以推送更改。
附言:假设我的包不是特定于任何框架的,也不是特定于Laravel或Symfony等框架的,只是一个通用的PHP包。
composer.json
文件并将包上传到Packagist。这不是问题。假设我有一个简单的PHP类已经添加到Packagist中。当我准备对其进行更改(修复错误、添加新功能等)时,我该怎么办?
我是直接使用
composer install
命令来将现有的包安装到本地开发环境,并直接在vendors
目录下更改我的包吗?如果是这样,那么该目录不是一个克隆的git repo,那我该如何提交并推送我的更改呢?还是我需要将repo克隆到一个随机的本地目录,然后使用
VCS
和指向我的克隆git repo的自定义本地存储库来在开发环境中使用composer install
命令?如果是这样,我想我应该在存储库中进行更改而不是在本地的vendors
目录中进行更改。那么如何让我的开发环境保持更新呢?每次保存包中的文件时,我是否必须执行composer update
命令?此外,Composer只会在看到包的版本号已更改时才会执行更新操作,所以我还必须手动编辑我的包的
composer.json
文件并处理版本控制,以便让开发环境更新。而这必须发生在我每次保存时。对我来说,工作流程似乎应该更为显然。我错过了什么?在我的本地开发环境中使用Composer很重要,这样其他依赖项才能正确加载,并且我显然希望我的包保持在克隆的git存储库中,以便我可以推送更改。
附言:假设我的包不是特定于任何框架的,也不是特定于Laravel或Symfony等框架的,只是一个通用的PHP包。