[英]How do I update my core project when using composer?
我最近第一次使用composer启动了一个项目,我刚刚将其部署到Q&A(演示)中,使用git来执行git pull
和更新Q&A环境,但是现在使用composer update
仅更新依赖项。
我的问题是,用于更新核心项目的SOP(标准操作程序)是什么,我仍在使用git,还是可以通过composer来实现?
还是我完全做错了,应该在供应商文件夹中工作?
您一直在项目中使用git
,并在第三方库中使用composer
。
我有一个使用PHP的大型Web应用程序(我的配置文件中的链接),这就是我一直这样做的方式,并且效果很好。
当我有新的可用于生产的代码并准备发布时,我将执行以下操作: git fetch && git pull
当我想更新作曲家时,我做了: composer -o update
我不知道您是否熟悉-o
标志-它会生成静态自动加载映射,从而使您的项目加载类更快。 更多信息在这里 。
作曲家的一点是,你不需要版本控制的依赖,这意味着任何在结束了vendor/
。
该项目具有composer.json
和composer.lock
。 这些在git的控制范围内,因此它知道要使用的软件包和版本。 但是,应该使用.gitignore
忽略vendor/
目录。 如果您尚未进行此设置,则只需添加以下行:
/vendor/*
您可以正常控制其他文件的版本。
因此操作程序是使用git和normal。 其次是composer update
。
这种设置的优点是git不必麻烦管理潜在的数千个文件(在vendor/
内部),这些文件通常不会改变。 更改它们的唯一情况是,如果您要开始使用其他版本的程序包,或者要添加新的程序包。 好了,所有这些包/版本都在composer.json
中定义(git正在监视更改)。 您需要做的就是运行composer update
,它将把您的vendor/
目录中的所有内容更新为“正确”的版本。
这是使用Composer的优点之一-所有开发人员都可以“列出”正确的软件包/版本,而无需对其中的所有文件进行版本控制。
根据以下评论进行编辑 :
注意composer update
只能在开发中运行。 部署到质量检查或生产时,请使用composer install
。 这将安装您的composer.lock
文件引用的确切版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.