Gemfile样式

时间:2016-01-08 12:39:39

标签: ruby-on-rails ruby coding-style rubygems

我想知道Gemfile上是否有普遍接受的样式。

我生成新的rails应用程序,打开Gemifile,并在适当的组(test,dev等)下添加我需要的所有gem。

当我查看Rails开源项目时,大多数都不是这样构建的。他们将标准安装的Rails宝石保留原样或注释掉,然后在其下面有第二个宝石列表,用于应用程序实际需要的宝石。对我来说,这个可读性较差,但是有很多人似乎也是这样做的原因吗?

1 个答案:

答案 0 :(得分:3)

没有通用标准或共识,就像在Ruby文件中留下注释代码没有通用标准一样。

一般来说,在我们习惯于没有version control system的情况下进行编码的时候,留下注意事项的想法是一个坏习惯。

如果您没有使用宝石,则无需将其留在那里注释掉。可以暂时评论它,同时测试/不使用或暂时出于任何原因测试不同的行为,但是一旦你决定取出它,就可以安全地删除它。

就个人而言,我通常按以下方式构建Gemfiles:

source 'https://rubygems.org'

# Rails core gems at the top
gem 'rake'
gem 'rails', '4.2.5'
gem 'sass-rails', '~> 5.0'
.
.
.
gem 'responders', '~> 2.0'

# Gems, in alphabetical order
gem 'yajl-ruby', '~> 1.2.0', require: 'yajl'
gem 'bcrypt', '~> 3.1.0', require: 'bcrypt'
.
.
.

# Environment dependent gems, in alphabetical order
group :test do
  gem 'database_cleaner', require: false
  .
  .
end

group :development do
  gem 'letter_opener', '~> 1.4.0'
  .
  .
  .
end

group :production do
  gem 'clockwork', '~> 1.2.0', require: false
  .
  .
  .
end

group :development, :test do
  gem 'byebug', require: false
  .
  .
  .
end