Первое небольшое предположение:
Ваш "веб-приложение" является чисто кодом или главным образом кодом.
Ваше «веб-приложение» не изменяется само, или изменения ограничены внешними ресурсами.
Ваше "веб-приложение" не меняет дизайн базы данных во время обновлений.
Самый простой ответ - настроить dcvs, и одной командой вы отправите весь код клиентам. В качестве побочного эффекта вы получите возможность откатить обновление, если это необходимо. В современных cvs нет проблем с установкой нескольких репостов, которые вы обновляете, и добавление новых также тривиально. Настройка dcvs также не является проблемой.
Таким образом, на компьютере разработчика (или компьютере, который посещает код непосредственно перед отправкой обновления клиентам) вы настраиваете cvs, а затем с помощью одной команды внедряете изменения в клиентах. Однако это приведет к статическим изменениям (и не приведет к обновлению базы данных!), Поэтому для выполнения динамических изменений после простого копирования изменений вам потребуются дополнительные сценарии (и те, которые вы также можете поместить в репо, чтобы они также обновлялись!). Затем настройте серверы репозитория и dcvs на клиентском компьютере. И вы готовы начать развертывание.
Вы также можете найти специальное (для вашего языка + фреймворка) решение для развертывания (таких должно быть много для PHP, хотя они могут быть бесплатными).
Прокомментируйте, если вам нужны какие-либо разъяснения.