存储库部署和编辑器:什么工作流程?

2022-08-30 21:15:11

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

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

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

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

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


答案 1

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


答案 2

Capistrano(如果您使用的是Symfony2,则为Capifony)对于使用作曲家的部署非常有用。您可以远程触发部署,它将单独运行 Composer 安装,以便站点保持联机状态,直到成功部署为止。还有许多其他好处,例如保留以前的部署和回滚,在部署之前复制旧供应商,编译资产等。


推荐