rsync
is a nifty little tool that can deploy a website to a testing or production server.
Here's a one line command to deploy brecksblog:
rsync -arvuz /home/user/brecksblog breck32@breckyunits.com:/var/www/html/ --exclude '.git' --exclude 'deploy' --exclude 'README' --exclude 'posts.php'
This one line will do a fast, incremental file transfer from my local directory to the web server.
I saved this file as "deploy", and then run it by typing:
./deploy
The exclude option will exclude a file or directory from being synced.
Here's an explanation about the options I use. I use rsync with these options:
rsync -arvuz /src/foo/ /dest/foo
This will copy the contents of /src/foo/ into /dest/foo. Options explained: