十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章将为大家详细讲解有关composer中容易被人忽略的知识点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
目前创新互联已为成百上千的企业提供了网站建设、域名、虚拟空间、网站托管维护、企业网站设计、青云谱网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
1.composer 版本号 ~ ^ *
(1) 包版本:*
{ "require": { "monolog/monolog": "1.0.*" } }
1.0.* 这表示任何从 1.0 开始的开发分支,它将会匹配 1.0.0、1.0.2 或者 1.0.20。
(2) 包版本:~
~1.2 相当于 >=1.2,<2.0, 即 1 版本,匹配前1 位 1.
~1.2 只意味着 .2 部分可以改变,但是 1. 部分是固定的。
(3) 包版本:^
^1.2.3 相当于>=1.2.3 <1.3 即匹配前2 位 1.2
2.composer install
(1)如果已经存在composer.lock时,读取composer.lock下载依赖。
(2)如果没有 composer.lock 文件,读取 composer.json 文件,处理依赖关系,并把其安装到 vendor 目录下。
也就是说本地有一份composer.lock,你就可以保证无论过去了多久,你都能拉到相同的依赖。
所以应该把 composer.lock 放到 git 版本库中,这样可以确保你项目中的每一个人、每一台电脑,不管什么系统,都能拉取到一模一样的依赖,以减少潜在的依赖对部署的影响。
3.composer update
读取composer.json中指定的依赖,然后拉取依赖放入vendor目录下,并且把所有拉取依赖的确切的版本号写入composer.lock文件中。
(1)那么什么时候需要使用composer update呢?
比如某扩展发布的新版本有我们需要的新功能时,这时我们需要更新该扩展,我们update时指定具体更新的扩展名,如composer update package 而不要直接composer update。因为直接composer update后,所有的扩展都会更新,风险很大。
4.总结:
(1)composer update 根据composer.json来更新的,并把扩展的版本号写入到composer.lock中。
(2)composer install 根据composer.lock来更新的
(3)开发过程中 少用 composer update ,应该用 composer install
(4)如果新加一个包,可以使用:composer require "包名:版本号"
关于“composer中容易被人忽略的知识点有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。