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