Мой совет - потратить неделю на погашение накопленного долга по тестированию, а затем выполнить обновление одним махом.
Там, где я работаю, мы обновили очень большое приложение с 1.2 до 2.0.2 прошлым летом и в то же время обновили до Ruby 1.8.6.
Это заняло НАМНОГО дольше, чем ожидалось. В приложении использовалось несколько старых функций, которые были удалены или устарели (например, ActionWebService), поэтому их преобразование заняло некоторое время. Но в основном мы столкнулись с множеством мелких ошибок, таких как небольшие различия в работе параметров переключателей, некоторые из которых были связаны с обновлением Ruby (против Rails).
Некоторые части приложения были покрыты пятнистыми тестами. Если бы мы пошли на это с лучшими тестами, все было бы намного проще.