How to use composer: Difference between revisions

From 清冽之泉
Jump to navigation Jump to search
 
Line 23: Line 23:
composer config -g --unset repos.packagist
composer config -g --unset repos.packagist
</syntaxhighlight>
</syntaxhighlight>
剩下的 20% 的情况只有彻底解决网络问题。解决不了就别学编程了。


== 解决 sudo 问题 ==
== 解决 sudo 问题 ==

Latest revision as of 16:49, 27 May 2025

composer 用起来不便,有三种原因,一是 composer 版本旧了,二是网络问题,三是 sudo 问题。

解决版本问题

不要用发行版自带的 composer,去官网下载最新的 composer,就行了。以下参考近期版本,最新版本请自行去官网查看安装方法:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'.PHP_EOL; } else { echo 'Installer corrupt'.PHP_EOL; unlink('composer-setup.php'); exit(1); }"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

解决网络问题

网络问题还有什么解决办法吗?懂的都懂。

退而求其次,用国内源能解决 80% 的问题:

composer clear-cache
composer self-update
composer config -g -l
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer config -g repos.packagist composer https://mirrors.tencent.com/composer/
composer config -g --unset repos.packagist

剩下的 20% 的情况只有彻底解决网络问题。解决不了就别学编程了。

解决 sudo 问题

刚开始我一直不明白为何每次用 sudo 都有提示不建议用 sudo,不用 sudo 又老失败。

现在我搞明白了,你运行 sudo 的路径的所属用户假设名字叫 Linda,你自身运行命令的身份也是 Linda,也就是 Linda 在一个属于她自己的路径中 composer,就可以无 sudo 畅用 composer。