在Gemfile中指定Rails版本或分支是否更好?

时间:2017-01-14 21:18:37

标签: ruby-on-rails rubygems gemfile

我目前正在使用

gem 'rails', '~> 5.0.0'

在我的Gemfile中。

我刚学会了一种指定Rails分支的不同方法,即:

gem 'rails', github: "rails/rails", branch: '5-0-stable'

是否有最佳做法在Gemfile中包含Rails?你为什么要用另一种方法呢?

2 个答案:

答案 0 :(得分:3)

gem 'rails', '~> 5.0.0'

使用所谓的悲观版本控制。所谓的squiggly arrow意味着它将使用5.0.X中的任何新的次要版本,这意味着您仍然可以获得错误修正,但是非常确定库不会突然改变您。

~> 5.0.0相当于>= 5.0.0 <5.1

将gem直接链接到github repo只是一个好主意,如果你想要处于最前沿,或者如果最新版本中存在重大问题或不兼容,但是在主服务器中已修复。

通常情况下你想要使用gem A,但是最新版本的gem B与A不兼容,这经常在主要版本发布后发生。

要将所有宝石直接链接到他们的主分支,那将是非常努力的理智。

答案 1 :(得分:2)

我所知道的没有最好的做法。

rails的稳定分支不断变化,它只是试图没有错误。如果你知道你希望你的应用程序定位下一版本的Rails,那么使用这样的分支可能是一个好主意。

ruby​​gems.org的宝石版可能是最佳实践&#39;现在我想起来了。您可以保证Rails代码库不会在您之下更改。

如果只是为了学习艰难的方式,尝试几周的github方法没有坏处!

祝你好运