php - 在Laravel中,如果同时有多个开发者,怎么进行包的更新?

查看:148
本文介绍了php - 在Laravel中,如果同时有多个开发者,怎么进行包的更新?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

是这样的,如果其中一个人增加了一项依赖,并且是注册到了Provider中。此时其他人更新完代码后,执行composer update会出现错误。
我曾想吧vendor加入到git中。但是开发中有一些包是不需要放到生产环境的。
我想请教一下各位大侠,是怎么处理这个问题的。

---更新---
我遇到的问题是这样的。
假如有两个开发者,他们已经完成了项目的初始化。现在开发者A在本地添加了依赖:
composer require vendor/package
这个包是一个Laravel的扩展,需要注册一个ServiceProvider。所以开发者A就需要在config/app.php中添加这个Provider。之后是一系列的后继配置blabla~。OK,现在A可以提交代码,并push到远程分支了。
而后开发者C(别问我B哪去了)pull下了代码。现在他在执行的代码时发现缺少依赖。那现在他需要添加这个依赖。
我现在的方式是执行了
composer update vendor/package
因为Laravel在composer.json中注册了几个钩子,其中一个会在更新时执行。这个命令在初始化的时候,因为要加载ServiceProvider,而代码中A添加的Provider在依赖中并不存在。所以composer就happy的抛出异常退出了。
这就是我的问题。请问大家是怎么处理的

解决方案

1、有人已经require包,就证明这个配置已经在 composer.json文件中了,对于你来说,你 pull 了代码,只需要 composer install 就可以了,完全不需要update

2、另外一种情况避免问题,就是有大于一个的开发者,那最好是确实谁是主导者,谁能决定一些什么事情。

这篇关于php - 在Laravel中,如果同时有多个开发者,怎么进行包的更新?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆