私が最近リーダーを務めた大きなRailsプロジェクトのひとつに、アプリをRails 3.2から4.2へのアップグレード作業がありました。そのときに学んだ、問題を最小限に抑えて大規模なRailsアプリをアップグレードする方法を皆さまと共有したいと思います。本記事で扱っている運用上の問題には、Rails 3.2から4.2へのアップグレード固有の問題もありますが、ほとんどの問題は一般的なRailsの段階的アップグレードに関連するはずです。 Railsアプリのアップグレード方法には次の3種類が考えられます。 「世界を止める」: 機能開発を中断し、開発者全員がRailsアップグレードに専念する方法 長期のアップグレード用ブランチ: 開発者がmasterブランチの追加開発に追従し続ける方法 段階的アップグレード: アプリを複数バージョンのRailsで動くようにし、新旧バージョンで振る舞いが同じになるよ