My VPS is my ‘live server’, it runs all my production code on the internet. But I develop locally on my laptop using XAMPP. For most of my projects I use Git as a version control system while storing it on Github.
So the infrastructure looks like:
laptop -> Github -> vps dev version control production working copy repo working copy
Everytime I make some changes to my code I commit them to Github:
git commit -a git push
When it’s time to deploy an update I only have to get the latest changes from Github: