Tools->Deployment->Options
Выставляете галочку на
Prompt when overr.....
Выставляете
Automatic Upload в Tools->Deployment
В итоге после смены ветки/генерации кода/тдтп - изменения отправляются на сервер.
Но:
Разработка на удаленном сервере нужна только если Ваш проект сложный и развернуть полноценную рабочую версию тяжело. Например микросервисы. Когда их 20+ поднять полноценное приложение на локальной тачке тяжело, да и порой невозможно, ресурсов не хватит.
В остальных случаях:
Никогда не загрязняйте свою хост машину. Используйте vagrant + любой devops софт. Самое простое использовать
puphpet. Используйте vcs(
git/svn/mercurial), для контроля версий приложения.
Деплоить можно по разному, тут кто на что горазд, от сборки на локальной тачке и заливке через scp до CI(gitlab, capistrano, jenkins), это тема другого вопроса.
PS: также, если вы разрабатываете не на винде(лучше сразу отвыкайте), то можно смонтировать nfs директорию, которая будет автоматом подгружать ваши изменения, но уже на уровне операционной системы, а не IDE.
UPD:
UPD2: Под разработкой на сервере я подразумевал девелоперский сервер\контейнер.
UPD3:
Upload External Changes должен выгружать изменения с сервера, но помоему он у меня не заработал по ssh, точно не помню, можете попробовать =)