emacs(хотя это не важно, любой редактор)
+
git(тоже не важно, можно и hg)
+
capistrano, деплоит код из системы контроля версий, если что-то всплыло, что не увидел в тестах, откат моментальный на прошлую рабочую версию. Спокойно деплоит на контейнеры находящиеся внутри серверов. Может деплоить на много мест. Удаляет всякий мусор .git и т.д.
+
supervisord, держит рабочим приложение, дружит с capistrano, т.е. capistrano умеет его передёргивать, когда новый код загружает