中易网

如何使用composer进行包管理更合适

答案:2  悬赏:10  
解决时间 2021-03-15 22:48
如何使用composer进行包管理更合适
最佳答案
遇到过相同的问题, 我的解决方案是在 `.gitignore` 文件里面把 `composer.lock` 这一行去掉, 也就是说把 `composer.lock` 文件也加入版本控制.

这样做有以下好处:

让参与项目开发的成员使用这些 package 的同一版本, 减少分歧;
在生产环境下, 使用命令 `composer install` 可以确保跟开发的时候使用了统一的版本, 减少不必要的变数;
跟踪当前项目使用所有 `package` 的版本, 当执行 `composer update` 出现问题时, 可以利用 Git 定位到出问题的 package, 匹对下版本, 接下来就可以做如: 在 composer.json 里面写死版本等的解决动作了.
注意: 这里说下 composer 的机制, 当 `composer.lock` 文件存在的时候, 执行 `composer install` 命令时, composer 会更新按照 `composer.lock` 里的 package 指定版本进行安装, 如果是执行 `composer update` 的话, 会更新 `package` 版本, 并更新 `composer.lock` 文件.
最后一条好处尤其重要, 设想如果是在没有版本控制 `composer.lock` 文件的情况下, 一出现问题, 那就直接瞎眼了.
全部回答
安装的是 monolog 1.1 版本,而一个多月以后的现在,monolog 已经是 1.2 了,运行命令后直接更新到 1.2,这时项目并没有针对 1.2 进行过测试,项目一下子变得很不稳定,情况有时候会比这个更糟糕,尤其是在一个庞大的项目中,你没有对项目写完整覆盖测试的情况,什么东西坏掉了你都不知道。 那应该使用哪个命令呢?install, update 还是 require ? 接下来我们一一解释。 简单解释 composer install - 如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖; composer update - 从 composer.json 安装最新扩展包和依赖; composer update vendor/package - 从 composer.json 或者对应包的配置,并更新到最新; composer require new/package - 添加安装 new/package , 可以指定版本,如: composer require new/package ~2.5.
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
新蕾电动车县级代理要什么条件?
水瓶男爱你和不爱你?
德阳火车站到德阳市旌阳区泰山南路3段76坐那
我身高160,95斤,在网上买裤子时不知道是S,M
尚德信矿业投资公司地址在哪,我要去那里办事
狗市现在有什么狗
中板厂地址在哪,我要去那里办事
看看俄罗斯“富二代”是怎样生活的
PLC的常数是什么意思
嘉兴市新丰镇王氏塑料厂我想知道这个在什么地
和arm 中ar相同读音的单词有哪些
地王手机卖场这个地址在什么地方,我要处理点
源城区交通违法处理终端机(源城区交警支队江
可以做DNA亲子鉴定吗
国翠小学地址在哪,我要去那里办事
推荐资讯
戴帽子怎么能防止头发不被压得扁平?
家里有死了的植物会不会招苍蝇
一颗人造卫星在离地面高度等于地球半径的圆形
我是个女孩子,在读土木工程,以后要考研,有什
vue 一个model怎么设置两个值
人民路/和平路(路口)地址在什么地方,想过去
朋友空间里发:我不敢当着众人哭 因为我怕哭
果果童装店我想知道这个在什么地方
badly和bad哪个更倾向于严重地
驾照分扣超了要学习但没时间怎么办
我们战斗吧9月9日插曲,王嘉尔比心时候的背景
下应水方源食品批发部地址有知道的么?有点事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?