Ну в том же phpstorm можно настроить deployment, чтобы по ctrl+s изменение сразу заливалось по ssh, синхронизация с удалённым сервером и т.п.
Но, как было замечено комментариях, идея так себе, особенно если это боевой сервер. Зальёте что-нибудь не то, будет боль.
По-хорошему, лучше развернуть локальную копию, и с ней работать(даже если это будет виртуалка, можно использовать тот же deployment в phpstorm), а потом заливать на боевой сервер, используя VCS. (ну или какие-то инструменты деплоя использовать, но это, так сказать, следующий уровень)