Мой последний проект Rails более или менее и экспериментирует для меня, чтобы ломать много вещей и учиться в этом процессе. У меня есть последняя версия Ruby, указанная в моем gemfile:
ruby '2.2.3'
И у меня также есть .ruby-version
dotfile в проекте со следующим содержимым:
2.2.3
Помимо очевидного дублирования, что не так с этим? Какова цель обеих конвенций? Если у меня должно быть только одно соглашение о включении моей версии Ruby, почему у меня должен быть один (Gemfile) поверх другого (dotfile)?
Хорошо ли иметь обе конвенции в проекте?
Я собираюсь быть единственным сторонником этого экспериментального проекта и не думаю, что проблема будет заключаться в том, чтобы поддерживать это одно тонкое дублирование. Я не собираюсь обновлять Ruby для этого проекта, и если я это сделаю, у меня не будет проблемы с тем, чтобы делать это в обоих местах. Помимо этой детали, я, конечно, избегаю такого дублирования в кодовых базах приложений.