Хочу ссылку на конкретные примеры использования DI. Я честно признаюсь, в отличии от Yii, здесь я код не смотрел. С тем, что Yii - костыльная штука, я согласен.
Я без понятия, как это сделано в WP.
Но перезаписывать файлы самими этими файлами - это возможный выстрел в ногу.
Я бы разделил эту историю на ядерную часть и приложение. Ядерную часть апдейтил бы через git, там бы сделал код, который апдейтит приложение (плагины там, модули). Тут можно и перезаписывать. Хотя доступ к коду на запись - это все равно выстрел в ногу.
Git - это не инструмент разработки. Это инструмент контроля версий. То есть, ровно то, что вам надо. Облачный сервер - это не средство контроля версий. Это… облачный сервер. На нем можно поставить git, gitolite, gitlab, сделать так, чтобы было удобно И разрабатывать, И деплоить.
Судя по вашим вопросам, вам нужен консультант в этой области.
@Sander_Li Нет, это не быстрее моего варианта. При sftp папке инициализация проекта в IDE может занимать много времени, будут медленно работать саджесты, к тому же не будет постоянной синхронизации с общим кодом, в итоге код может разойтись (это конечно наиболее актуально для core разработок, которыми я занимаюсь, но и прикладным программистам желательно оставаться в актуальном коде). А в моем варианту я в IDE делаю коммит, и просто запускаю в консоли git push origin (нажимаю стрелочку вверх и энтер). И гит довольно резво все закидывает куда надо.
Дополнительно это дает контроль за мерджами в боевую ветку, можно сделать отдельно ветку под предварительный тестинг перед мерджем, и все это будет еще и автоматизировано.
Если это обычная сетевая шара - то работает нормально. А если это сервер, и монтирование по sftp - работает отвратительно медленно. И нету смысла - если есть центральный реп.
@Raily Как я и говорил - минимальный и самый простой набор - gitolite. Поставить и разобраться в его настройке можно за 30 минут примерно.
Дальше надо освоить хуки, написать немного кода на bash, поотлаживать его - и все будет хорошо и ровно.