Code distribution system
Раньше делал так: hook на коммит в определенную ветку репозитория, который развертывает код из этой ветки на продакшене, вызывает миграцию схемы БД и говорит Apache-у перечитать конфиги.

В какой-то момент написал Makefile, который копирует файлы rsync-ом из текущего локального состояния репозитория, и там по мелочи всякие вещи (например, доставляет зависимости в virtualenv, если нужны). Удобнее, поскольку иногда хочется на staging сервер бросить код прямо из редактора, не коммитя.
hudson вас спасет.