简介
-
Composer 不是像 Yum 或 Apt 一样的包管理器,虽然它会处理『包』或库,但它管理这些包、库是基于项目的,它会安装这些包、库到你项目的一个目录下(一般是在 vendor 文件夹里),默认情况下不会全局地安装。它做为一个包管理器,也支持一个叫做 " global " 的全局命令,我们可以使用此命令来安装全局的包。
-
若要在项目中使用 Composer 你需要一个 composer.json 文件。该文件描述了你的项目依赖关系和其他元数据。
composer.lock文件
-
当Composer完成安装后,它将把所有下载的包和确切的版本信息写入到 composer.lock 文件,以此来锁定项目中第三方包的版本。你应该将 composer.lock放在项目仓库中,以便该项目所有成员都能锁定在依赖关系相同的版本
-
composer.lock 文件将阻止你自动获取最新依赖版本。如果要更新依赖到最新版本,使用 update 命令。这将获取最新匹配的版本(根据你的 composer.json 文件)并将新版本更新到 composer.lock 文件。(这相当于删除 composer.lock 文件并再次运行 install)。
vendor 文件夹
-
应该将 vendor 目录加入版本控制吗?通常情况下请不要这样做, vendor 文件夹(或者其它你依赖包所安装的位置)应该被加入 .gitignore
-
最好的方式是让所有开发人员使用 Composer 命令来安装依赖,同样的,构建服务器,部署工具等,需要将运行 Composer 纳入工程引导的一部分。