如何正确使用 Composer 安装 Laravel 扩展包

如何正确使用 Composer 安装 Laravel 扩展包

正确使用 Composer 安装 Laravel 扩展包:
简单解释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.
流程
接下来介绍几个日常生产的流程,来方便加深大家的理解。
流程一:新项目流程
创建 composer.json
并添加依赖到的扩展包;运行 composer install
安装扩展包并生成 composer.lock
提交 composer.lock
到代码版本控制器中,如:git;
流程二:项目协作者安装现有项目
克隆项目后,根目录下直接运行 composer install
从 composer.lock
中安装 指定版本
的扩展包以及其依赖;
此流程适用于生产环境代码的部署。
流程三:为项目添加新扩展包
使用 composer require vendor/package添加扩展包;
提交更新后的 composer.json和 composer.lock
到代码版本控制器中,如:git;
关于 composer.lock 文件composer.lock
文件里保存着对每一个代码依赖的版本记录(见下图),提交到版本控制器中,并配合 composer install
使用,保证了团队所有协作者开发环境、线上生产环境中运行的代码版本的一致性。
关于扩展包的安装方法
那么,准备添加一个扩展包,install, update, require 三个命令都可以用来安装扩展包,选择哪一个才是正确的呢?
答案是:使用 composer require命令
另外,在手动修改 composer.json 添加扩展包后, composer update new/package
进行指定扩展包更新的方式,也可以正确的安装,不过不建议使用这种方法,因为,一旦你忘记敲定后面的扩展包名,就会进入万劫不复的状态,别给自己留坑呀。
上面的概念不论对新手或者老手来说,都比较混淆,主要记住这个概念:
原有项目新添加扩展的,都使用 composer require new/package
这种方式来安装。完。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112461.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux的vi命令详解_centos7 vi命令

    linux的vi命令详解_centos7 vi命令Linux命令-vi命令  vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器.由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器.。1.语法:vi[参数][文件名称]…2.功能:  编辑文件。3.参数:n打印最近的n条历史命令。-N显示历史记录中最近的N个记录。-c清空当前历史命令。-a将目前新增的历史

    2022年9月22日
    3
  • Java中compareTo用法

    Java中compareTo用法Java中的compareto方法,返回参与比较的前后两个字符串的asc码的差值Stringa="a";Stringb="b";System.out.println(a.compareTo(b));输出值-112345Stringa="b";Stringb="a";System.out.println(a.compareTo(b));输出值1…

    2022年7月13日
    25
  • xsync文件「建议收藏」

    xsync文件「建议收藏」1、写好xsync.sh脚本#!/bin/bash#1.判断参数个数if[$#-lt1]thenechoNotEnoughArguement!exit;fi#2.遍历集群所有机器forhostinhadoop101hadoop102hadoop103doecho====================$host====================#3.遍历所有目录,挨个发送forfilein$@do

    2022年5月5日
    47
  • 2021版idea激活码99年【永久激活】

    (2021版idea激活码99年)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月21日
    282
  • 周末随笔「建议收藏」

    随便记录,聊以自慰这段时间的心思在工作上,也有一段时间没写一些东西了,内心有一些想法,搁置起来了。去年有段时间想着搞搞副业,说实话副业没赚到多少,几百上千的,还是自己能力不够。还是想办法先努力提高主业的收入,作为一个打工者,目前无非就是看哪里搬砖收益更好一点,能有更多点的成长而已。作为程序员,自己对技术的热情大多数只是停留在工作的使用上。这个技术工作中用了没有热情也是强制去了解去学习,要不就慢慢等着淘汰。单独靠热情驱动,还没发现自己真正对什么东西充满热情,有时候觉得可悲,无奈。工作对于目前的我来.

    2022年3月1日
    41
  • keil5 for arm_keil can’t open file

    keil5 for arm_keil can’t open file最近在写程序时,出现了个大问题,想在我用Keil写程序那么多个月,什么Bug我没见过,就在我建立好STM32的模板时后向里边添加文件时,编译后出现了这个问题,重新组建可能会解决这个问题,但是我没有.Google之后,问题解决的方案大致有两个/—————————————————————————…

    2022年9月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号