php - 存储库部署和 Composer : what workflow?

标签 php git deployment composer-php

作为一名 PHP 开发人员,我发现自己经常使用 Composer。过去它用于个人项目等,所以我没有太多问题,但现在使用 Laravel 4 它用于需要部署的项目,我正在努力调整我的工作流程。

我所有的项目都是 git 存储库,因此按照惯例,因为它仍然有很多错误,就像大多数开发人员一样,我将 vendor 目录放在我的 .gitignore 中。 现在的问题是:我也使用 Git 部署到服务器,并且根据所有逻辑,供应商目录没有上传,因为它没有被存储库跟踪。

所以我的问题是针对使用 Composer 和 Git 的时间比我长的人:保持服务器同步的最佳工作流程是什么?如何在不真正跟踪的情况下跟踪供应商文件夹? 我每次使用 Composer 更新时都尝试上传它,但我的一些供应商文件夹非常大,我无法在每次更新时手动上传 30Mb 的文件。

我真的不知道,你们是怎么解决的?我试着不忽略 vendor 文件夹,但 Git 把它搞砸了,一半被识别为克隆的 repos,无论如何都被忽略,等等。

更新:请注意,我在共享主机上,因此我无权访问服务器的终端。

最佳答案

最好的方法是更新到最新代码后在服务器上运行composer install。您还应该确保提交您的 composer.lock 文件,然后服务器将使用该文件进行安装(您不应在服务器上运行 composer update)。

关于php - 存储库部署和 Composer : what workflow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14498560/

相关文章:

heroku - 部署heroku-buildpack-nodejs和heroku-buildpack-ruby-minimal时出现"Push rejected, failed to compile Multipack app"

deployment - 使用 Windows 兼容包部署 .NET Core 应用程序

javascript - 如何将 echo 语句保存在由 javascript 确认框组成的变量中?

php - 表单验证以查看电子邮件是否已存在于 MySQL 数据库中

git - ssh:无法解析主机名(Docker、gitlab-ce)

git - 删除 .git 文件夹中的空目录是否安全?

node.js - AWS 开发工具包实例创建不接受 AMI ID

php - 选择一个不同的值计数及其自身的值 1 查询

php - 如何 "align"2个字符串?

git - "git checkout main_branch; git merge topic_branch"的别名?