我将Linux作为我的主要Rails开发平台,但我也安装了Rails并在我的Windows PC上运行。我的所有应用程序都在两台计算机之间同步,因此Linux上的更改将反映在Windows上。
我想在Linux上使用postgresql,但在Windows上使用sqlite3。有没有办法根据我正在使用的平台区分某些gem集合(Gemfile)?
答案 0 :(得分:2)
Bundler docs确实提到了:platform
选项,您可以使用它来指定要在特定平台上安装哪些gem。
另一个解决方案(我从其他Ruby开发人员和在线教程中学到的)是将你的gemset包装在一个组中,例如:
group :option do
gem 'gem1'
gem 'gem2'
...
end
然后运行:
bundle install --without option
运行此命令后,bundler将安装未在选项组中列出的gem。您可以将选项设置为windows或linux。因此,解决了区分某个平台的方法。
快乐的编码!
答案 1 :(得分:0)
我建议在两台机器(linux和windows)上使用postgresql,它会给你相同的开发者体验。 例如,如果你想使用特定的smth postgresql,你应该在windows / sqlite上运行该代码时考虑这一点。我很确定你不希望为windows和linux提供不同的代码库。