例如,像
这样的文件/vendor/composer/classLoader.php
/vendor/composer/autoload_classmap.php
在我正在进行的项目中签入。我不确定这是否是好习惯,因为我记得读过Laravel建议/vendor
在.gitignore
。
答案 0 :(得分:11)
不,应排除vendor
目录,不要手动触摸。安装依赖项时,composer update
/ composer install
将生成类加载器。
答案 1 :(得分:7)
否,您的供应商文件夹不属于您的源代码,不应该是 在您的git存储库中签入。
良好的工作流程将是:
composer update
composer.lock
composer install
您的composer.json
定义了在运行composer update
时将使用的可接受的依赖项版本。
仅使用composer.json
时出现的问题是具有可重现的版本(例如,在所有环境中完全相同的依赖版本)。这就是为什么当你运行composer install时,如果有一个composer.lock
文件,composer将改为加载与composer.lock文件中写入的完全相同的依赖项。无论何时运行composer.lock
,您的composer update
文件都会更新。