Não há nada de errado com isso. Certamente é melhor que o padrão. Muitas pessoas simplesmente fazem o check-out do controle de versão em cada servidor. No entanto, não é tão bom quanto os programas feitos para implantações na web. Pessoalmente, gosto de usar o chef com o recurso de implementação .
O recurso de deploy faz um checkout do svn ou git para um novo diretório, symlinks config files, e então muda o symlink que seu webserver usava para apontar para lá. Isso significa que, se você precisar, a reversão é tão simples quanto alterar uma receita. Então o chef apenas muda um symlink.
Realmente é tudo subjetivo. Chef tem uma curva de aprendizado, mas simplifica muitas tarefas administrativas. Ele também facilita a "ativação de servidores", o gerenciamento de dependências e a atualização dos arquivos de configuração. Ele permite combinar o gerenciamento de pacotes, o gerenciamento de configurações e o gerenciamento do sistema em um só lugar.
EDITAR: Adicionadas mais informações sobre o chef