Как вы организуете devel окружение?
Нууу как это сделано у большинства:
у разработчика есть локальная копия репозитория (иначе зачем вам git), и он пишет все у себя локально. Локально интегрирует код других девелоперов со своим ну и т.д. То бишь разработка исключительно локально.

Сервер только один, выкатывать туда можно либо на прямую из git (скажем в gitlab можно добавить доступ по ssh только на чтение) и пулить туда мастер. По сути на сервере всегда должна быть стабильная версия кода, мол с уже заимплеменченными фичами. ну или можно собирать билд в ci по пушу и автоматически разворачивать его.
Мне сложно понять эту проблему, поскольку сам я сижу под осью того же семейства, что стоит на боевом. 
Так что, в моем понимании, девел-сервер — это не единственное место, где программист может запустить написанный на локальном компе код, а сервер, максимально приближенный к боевому, для окончательной обкатки и показа всем причастным к задаче лицам. 

Соответственно, разумная организация представляется мне такой
1. Разработчик разрабатывает на своей локальной машине. Именно разрабатывает — пишет, запускает, отлаживает. Разработанное заливает в Git
2. На devel-сервере реализовано динамическое создание поддоменов. Создал девел папку t12 в /opt/www/bob — автоматически появился сайт t12.bob.devel.mysite.com.
3. Делаем в этой папке git clone (или pull) — и таким образом обновляем код.