通过 Composer 安装或复制供应商文件夹

Install via Composer or copy vendor folder

我想知道,在部署基于 composer 的项目时,为什么大多数人建议通过 SSH 连接到服务器并安装 composer 并下载依赖项,如下所示:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
composer install

我看不出与部署时仅复制 /vendor 文件夹有什么区别。 我错过了什么吗?

使用GIT

使用 GIT 时,我可以想象 /vendor 文件夹很大,应该避免使用。这是主要原因吗?

  • composer install 将安装开发依赖项,这不是您希望在服务器上安装的东西。因此,您在服务器上使用 composer install --no-dev

    这将减少服务器上的文件数量。

  • 有些软件包可能使用在某处设置绝对路径的脚本,如果不更改,这可能会严重中断。
  • 包裹太大,无法使用 FTP
  • 运送