Haga una copia del directorio de su sitio en vivo, use rsync para actualizar esa copia con su última versión, luego cambie el nombre de los directorios activos y actualizados para que la versión actualizada esté ahora activa.
En bash:
#!/bin/bash
set -e
cp -R /var/livesite /var/newversion
rsync [email protected]:/var/readytogolive /var/newversion
mv /var/livesite /var/oldlivesite
mv /var/newversion /var/livesite
Viola!
Editar: @Ted Percival - Esa es una buena idea. Ni siquiera sabía sobre "set -e". Script actualizado Editar: actualizado de nuevo a sugerencia de Ted (aunque creo que todavía funcionaría si de alguna manera fallara el comando cp, y si cp falla probablemente tenga problemas más serios.)