Какую версию рельсов использовать - PullRequest
0 голосов
/ 02 ноября 2011

Что лучше, когда дело доходит до выбора, какую версию рельсов использовать в вашей разработке?

Я хотел перейти на новейшую версию для новых функций, но во многих случаях велика вероятность того, что мой существующий код будет сломан, и для его исправления потребовалось много дополнительного времени. Должен ли я придерживаться текущей версии рельсов, которые я использую? или движется к обновлению?

Буду очень признателен за любые советы или рекомендации.

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Полезно всегда обновлять, потому что новые гемы могут не поддерживать более старые версии Rails, и вы получите новые функции от Rails, которые могут уменьшить код. Вы можете сделать это шаг за шагом, исправляя время от времени код, который будет ломаться в более новой версии Rails. Это больше похоже на непрерывный рефакторинг.

0 голосов
/ 02 ноября 2011

Я думаю, что вы должны тщательно проверить, когда и как обновить. Вот несколько советов, которые могут помочь в процессе обновления:

  • Версии патча (например, обновление с Rails 3.1.0 to Rails 3.1.1) обычно не представляли собой никаких проблем. Обновляйте, когда это возможно, обычно вам не нужно ничего менять. Иногда вам нужно проверить, нужно ли обновлять другие Gems, прочитайте заметки о выпуске, они дают (иногда) подсказки об этом.
  • Незначительные версии (например, обновление с Rails 3.0.9 to Rails 3.1.0) поставляются с новыми функциями и несовместимыми изменениями. В заметках о выпуске вы найдете информацию о том, что изменилось и должно быть проверено заранее. В качестве примера рассмотрим Ryan Bates railscast «Обновление до Rails 3.1.0» . Обычно вы должны сделать следующие шаги:

    • Обновление до последней версии патча.
    • Посмотрите на устаревшие сообщения журнала. Это те, которые могут сломаться после обновления.
    • Отметьте свое текущее приложение или ветку, чтобы быть уверенным, что при обновлении ничего не разрушится.
    • Выполняйте обновление до той степени, в которой вы уверены, что наиболее необходимые функции снова работают.
    • Объедините ваши изменения и продолжите обновление

    (Я сделал это за последние несколько дней для приложения, которое я обновил с Rails 1.2 до 2.0 до 2.3.8 до 3.0.0 до 3.0.9, а теперь 3.1.1.)

  • Основные обновления версии еще сложнее. Вы должны убедиться, что у вас есть достаточно времени и ресурсов, чтобы проверить все незначительные глюки, которые у вас могут быть. Большую часть времени команда Rails предоставляла ресурсы, помогающие выполнить обновление, например, помощник по обновлению Rails или 3 railscast "Обновление до Rails 3" .

В любом случае вам следует как минимум проверить, совместимы ли используемые вами основные гемы (в дополнение к обычным гемам Rails) с версией, на которую вы хотите перейти. Это может быть сложно, но иногда информация доступна.

По моему опыту, крупные обновления требуют времени, и если у вас его нет, не делайте обновления. Незначительные обновления занимают некоторое время, и в зависимости от изменений (активы в Rails 3.1) идут с ценником, который иногда, не всегда, того стоит. Обновления патчей безболезненны и должны выполняться по желанию.

...