这就是我一起使用composer和svn的方式:
在我的开发版本中,我运行composer将所需的软件包下载到vendor
目录。然后我将vendor
目录与开发文件夹的其余部分一起提交给svn。生产版本会复制vendor
文件夹。
我知道,建议不要在svn中提交vendor
目录(参见SVN Repo in vendor with Composer),但我希望在composer update
可能会破坏我的应用程序的情况下是安全的。它允许我在这种情况下将所有内容回滚到最后一个稳定状态。
作曲家如何工作的问题是,如果作曲家删除整个目录,则签出的svn repo会中断。
如果我知道如何回滚最终破解composer.lock
,我会切换到推荐的做法并仅将composer.json
和composer update
签入svn。请有人向我解释一下。
答案 0 :(得分:1)
当您拥有composer.lock
并运行composer install
(不更新)时,您确定您将获得被锁定的依赖关系"由你。
正在运行composer update
会忽略composer.lock
中的条目,并尝试下载composer.json
允许的最新依赖项。