Composerのdumpautoloadはdump-autoloadのエイリアス
この投稿は最終更新日から1年以上経過しています
composer.jsonでオートローダの設定を更新する時はcomposer dump-autoloadコマンドを実行するが、(ハイフンなしで)dumpautoloadとしている記事もよく見かける。どう違うの?
ふと思って調べてみたものの、dumpautoloadはdump-autoloadのエイリアスというだけで違いは何もないようだ。
->setName('dump-autoload')
->setAliases(array('dumpautoload'))
省略もできる
なので、どちらを入力しても問題ない。何ならduだけでも構わない。以下はすべて等価の命令だ。
composer du
composer dum
composer dump
composer dump-
composer dump-a
composer dump-au
composer dump-aut
composer dump-auto
composer dump-autol
composer dump-autolo
composer dump-autoloa
composer dump-autoload
composer dumpa
composer dumpau
composer dumpaut
composer dumpauto
composer dumpautol
composer dumpautolo
composer dumpautoloa
composer dumpautoload
composer dだけだと……
[Symfony\Component\Console\Exception\CommandNotFoundException]
Command "d" is ambiguous (depends, dump-autoload and 1 more).
dependsやdiagnoseがあるため例外が投げられる。
dump-autoloadに限らず、特定できる範囲でコマンドは省略できるということらしい。これはSymfonyコンソールの仕様だからLaravelなどでも同じ。
As Composer uses symfony/console you can call commands by short name if it's not ambiguous.
環境
- Composer 1.10.6