我应该提交 vendor 目录中的依赖包吗? 不建议
不建议
人家官方都不建议了。那咱就不提交了呗
地址:https://docs.phpcomposer.com/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.html
composer.lock锁文件一定要提交到代码库中
在安装依赖后,Composer 将把安装时确切的版本号列表写入 composer.lock 文件,这将锁定改项目的特定版本。
有composer.lock后,任何人拿到你的项目都将下载与指定版本完全相同的依赖。你的持续集成服务器、生产环境、你团队中的其他开发人员、每个人都使用相同的依赖,从而减轻潜在的错误对部署的影响。
如果不存在 composer.lock 文件,Composer 将读取 composer.json 并创建锁文件。这时生产环境的版本可能和你本地的版本不一致,导致错误发生。
服务器不要随便composer update
composer.lock文件阻止您自动获取最新版本的依赖项。要更新到最新版本,请使用composer update命令,但是,一般不要使用update命令,因为update命令将更新所有的依赖到最新,这个动作是危险的,这样很有可能导致,最新类库和你以前写的东西冲突,你以前的代码不可用。
————————————————
版权声明:本文为CSDN博主「坏小哥」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43885417/article/details/85043533
卡着不动怎么办
composer update -vvv 查看进程
Composer hangs in “Something’s changed, looking at all rules again” state
Warning: Ambiguous class resolution, “App\Http\Middleware\ExampleMiddleware” was found in both “/app/Http/Middleware/ExampleMiddleware.php” and “app/Http/Middleware/AAATech.php”, the first will be used.
类重名了
不想更新别的包怎么办?
http://docs.phpcomposer.com/03-cli.html#require-Options
–no-update
有待测试
包被废弃
还需考证
Carbon 1 is deprecated, see how to migrate to Carbon 2.
https://carbon.nesbot.com/docs/#api-carbon-2
You can run ‘./vendor/bin/upgrade-carbon’ to get help in updating carbon and other frameworks and libraries that depend on it.
“kylekatarnls/laravel-carbon-2”: “^1.0.0”,
“nesbot/carbon”: “2.16.3 as 1.34.0”
如果 原来安装了某个包,但composer.json里面没有这个包,那么就会被删除掉。
坑死都不知道咋回事
找到 程序里面有的包,但composer.json里面没有的,
在composer require 一边。