我对Laravel 4和作曲家如何与SVN合作感到非常沮丧。也许有什么东西我忽略了。
我的工作流程包括本地开发,然后上传到DEV服务器,我们使用豆茎(http://beanstalkapp.com/)作为我们的在线版本控制和部署系统。当更新准备好测试时,我们将部署到一个临时服务器,然后通过单击部署最终部署到集群中的服务器。
然而,几乎我读到的每一篇文章都说要忽略供应商目录和其他几个文件。我不能这样做,这些文件需要提交才能被部署到生产中!当我安装或更新当前供应商packages在安装包/依赖项时删除整个目录时,就会出现问题,因为它删除了.svn数据并破坏了我的环境。
唯一的方法似乎是在更新composer之前破坏供应商目录,然后再添加供应商目录。我不喜欢这样做,我希望我能看到更新过程中更新的文件。
所以我的问题是:
1)我的设置有什么问题?
2)要让SVN和作曲家/Laravel一起演奏,我能做些什么?
发布于 2013-10-15 19:16:35
我也经历过类似的情况。
我们的部署使得有必要提交供应商目录。实际上,这很好,因为与由锁文件引导的新composer install相比,结果不应该不同。
最初,我编写了一个脚本,负责编写器更新:
/vendorcomposer update.git目录,因为我的依赖项都来自GIT --但递归删除所有.svn目录是一样的)。如果脚本运行良好(我对它使用了phing,这对于递归删除来说特别好),您只需调用它,等待一段时间,然后完成。
但这不会让您感到高兴,而且有一天,您会采取步骤来实际调整部署的工作方式。我认为有两种可能的方法:要么创建一个可部署的工件(查看源代码、安装依赖项、将其全部放在TGZ或ZIP中、移动到目标服务器、解压缩),要么在部署过程中使用钩子来安装部署时的依赖项。Bean秸秆在部署过程中似乎支持钩子,因此您应该对此进行调查。
https://stackoverflow.com/questions/19386074
复制相似问题