How to use composer
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。