При разработке на Ruby принято использовать git. И мне, как поклоннику mercurial пришлось слегка модифицировать под себя путь
от создания приложения на Ruby on Rails до его развертывания.
Шаг 1. Создание нового проекта
Для начала создал свой .hgignore файл на основе
дефолтного .gitignore для RoR проекта. Затем написал простенький скрипт для создания нового проекта:
rails new $@ --skip-git --skip-test-unit || exit 1
cp .hgignore $1 || exit 1
rvm gemset create $1 || exit
echo "rvm gemset use $1" > $1/.rvmrc || exit 1
Шаг 2. Разработка нового приложения
Здесь никаких сложностей не возникает - просто использую mercurial в свое удовольствие.
Деплоить RoR проект на heroku очень просто, если вы используете git. Для mercurial есть неофициальное расширение
hg-git. Правда версия 0.3.2 не работает, т.к. в конец добавляется слэш, чего heroku никак не ожидает и push аварийно завершается. Пришлось взять последнюю версию из репозитория.
Еще одна тонкость: необходимо выполнять команды heroku с ключом --app, чтобы указать, для какого приложения вы хотите посмотреть логи etc.
В итоге deployment я выполняю следующим скриптом:
hg push git+ssh://git@heroku.com:$1.git
heroku run rake db:migrate --app $1