今天公司组织学习共享,进到了 composer.json和composer.lock的区别,那时候面试的时候问到了,但是回答的一知半解,后面查资料了解了一下,也不是很通,今天在公司大佬的讲解下了解了,突然想到原来我自己的博客install的时候会更新所有composer导致博客瘫痪,都是我迁移项目的时候没有迁移composer.lock文件,后面还直接composer update 导致直接升级了框架,项目崩溃,下面的内容是查到的,重点的会标记一下,多学还是有收获的。
我们在做项目的时候,总是要安装一些依赖。composer给我们提供了很多方便。直接运行composer install 。
运行composer install 将会读取composer.lock文件,进行更新依赖。如果composer.lock不存在或者里面没内容,会执行composer.json,会将最新版本的文件下载到vendor目录里,然后再去更新composer.lock文件。(这句话是重点)
我们都会把项目部署到github上,可是,当一个项目需要多人合作的时候,为了让所有人都使用与您正在使用的完全相同的依赖项。因此,为了保证项目不出现问题或者项目迁移的时候项目正常运行,完全是建议把composer.lock提交到git上。
每当去更新依赖的时候,都是基于composer.lock去更新的。
注意:
composer.lock文件阻止您自动获取最新版本的依赖项。要更新到最新版本,请使用composer update命令,但是,一般不要使用update命令,因为update命令将更新所有的依赖到最新,这个动作是危险的,这样很有可能导致,最新类库或者框架版本和你以前写的东西冲突,你以前的代码不可用,导致项目奔溃,最后只能回滚到update前即可。
这里学习到了composer,下期准备整理一下今天学到的搭建composer私有库的相关知识,还是很有必要的,后续项目也都是使用公司的composer私有库相关的sdk,自己搭建一下方便后续学习和使用。
推荐