O que mudou desde a última implantação de um aplicativo Rails?

Aqui está uma técnica simples para obter uma lista de todos os novos commits que foram adicionados ao branch master desde a última implantação de um aplicativo Rails.
Ele assume que você está usando o branch master para implementações de produção e que você implementa com capistrano.

Adicione as seguintes linhas ao seu arquivo config / deploy.rb :

after "deploy:update_code", "deploy:symlink_revision"

namespace :deploy do
task
:symlink_revision do
run
"ln -nfs #{release_path}/REVISION #{release_path}/public/REVISION"
end
end

Crie um script new-release-log (e coloque-o em seu $ PATH) com o seguinte conteúdo:

git fetch origin >/dev/null 2>&1
git log
--reverse --no-merges --oneline $(curl -s http://yourappname.com/REVISION)..origin/master

Agora, quando você executar new-release-log dentro de seu repositório, você obterá uma lista de todos os commits que irão para produção quando você digitar na cap deploypróxima vez.