今更ですが、Composer.pharがinstallとupdateでcomposer.json/.lockを見て何をしているかを図解
基本的に、下記の事項を覚えておけば挙動は理解しやすい。
- installは.lockを見てその通りに実行する
- updateは、.jsonを見て依存性を解決する
composer.phar install を実行した場合にcomposer.lockの有無による挙動の違い
.lockがあれば待ち時間は少なくて済む。
composer.json を更新した際に、installとupdateでは何が違うのか?
ライブラリを追加したい場合にcomposer.jsonに記載したあと、それぞれのコマンドを打った場合。
install 実行
installは.lockファイルを見るだけなのでライブラリの追加は行われない。
update 実行
updateは.jsonを見て依存性を解決する。そのため追記したライブラリの依存性を解決しダウンロードが行われる。