Edit files locally and deploy the changes on a remote server using git.
It automates the step outlined in this tutorial amongst others.
put the git-deploy-setup.sh script somewhere in your $PATH and then run:
$ git config --global alias.deploy '!git-deploy-setup.sh'
When in the repo just go:
$ git deploy ssh://user@server/a/path/to/repo
which creates a bare repository bare.git in that remote directory
and copies the working tree in the directory
You can edit locally and push your changes to a remote dir
$ git push live master
I find this often better than playing with:
sshfswhich is too slow and has lags no matter what compression settings you usersyncwhich is great, but has no version history if you made a mistakescpwhich is a pain for more than one filetrampwhich means i have to back to using emacs and procastinate over my~/.emacs.d/remote-editon atom,rmateon ST which I always struggle to setup quickly and that give me no directory browsing or file history
If you want proper deployment just like heroku let's you do using git you should check out Booking.com git-deploy or mislav git-deploy packages.