O propósito do Composer é que você só precisa ter um diretório vazio (!) vendor em seu repositório, mas rastrear composer.json (requisitos) e composer.lock (últimas versões específicas testadas) e executar composer install após checkout em uma nova máquina de desenvolvimento.
(NB composer install instalará as versões específicas de acordo com o arquivo composer.lock . composer update instalará qualquer versão mais recente que corresponda aos requisitos definidos no composer.json .)
O Composer deve então baixar o binário apropriado para o seu sistema e colocá-lo no diretório vendor/bin/ .