PHPのパッケージ管理ツールであるComposerですが、問題の切り分けなどで、いったんComposerにまつわる全てのファイルを削除する方法を説明します。
Composerを構成するファイル
Composerのプログラム自体は、composer.pharファイルの1ファイルのみなのでプログラムの削除は簡単です。プログラム以外にComposerは一度取得したパッケージの情報をローカルにキャッシュしているため、Composerに関するファイルを完全削除するにはキャッシュの削除も必要です。
キャッシュの削除
composerは、一度ダウンロードしたファイルをキャッシュしていている為、まずはキャッシュファイルを削除します。
キャッシュファイルは下記の場所がデフォルトです。
Linux: /home/user/.composer
Windows: C:\Users\user\AppData\Roaming\Composer
使用している環境でキャッシュファイルがどこにあるかわからない場合は、以下のようにcomposer homeコマンドなど、適当なcomposerコマンドを-vvvオプション付きで実行します。
実行の途中で、Writing ... into cacheというログが出力されるので、これでキャッシュファイルがあるディレクトリを確認できます。
> composer home monolog/monolog -vvv
Reading ./composer.json
Loading config file C:/Users/user/AppData/Roaming/Composer/config.json
Loading config file C:/Users/user/AppData/Roaming/Composer/auth.json
Loading config file ./composer.json
...
Downloading https://packagist.org/packages.json
Writing C:/Users/xxx/AppData/Local/Composer/repo/https---packagist.org/packages.json into cache
設定ファイルの削除
composer config -gオプションでcomposerの設定を行っている場合、この情報はconfig.jsonで管理されています。
こちらも、下記のディレクトリで管理されているため、さきほどキャッシュを削除したときに一緒に消えているはずです。
Linux: /home/user/.composer/config.json
Windows: C:\Users\user\AppData\Roaming\Composer\config.json
プログラムの削除
キャッシュの削除が完了したら、composer.pharファイルを削除します。
この2つを削除すれば、composerに関するファイルはすべて削除完了です。
Composerをapg-getでインストールしたときは?
ComposerをLinuxのパッケージ管理コマンドであるapt-getでインストールした場合は、下記のコマンドで削除できます。
sudo apt-get purge composer
依存パッケージも同時に削除したい場合は、下記のコマンドを使用します。
sudo apt-get purge --auto-remove composer
設定ファイルだけは残しておきたい場合は、purgeの代わりにremoveを使用します。
sudo apt-get remove composer
sudo apt-get remove --auto-remove composer