在Heroku上的Gemfile中自定义Ruby Gem

时间:2011-07-23 11:31:35

标签: ruby-on-rails ruby gem

我修改了我在Rails应用程序中使用的Gem,需要在Heroku上使用它。有没有办法在我的应用程序中将修改后的Gem上传到Heroku并在我的Gemfile中指定自定义路径?

4 个答案:

答案 0 :(得分:22)

您可以在vendor目录中放置自定义宝石,然后在Gemfile中指定它们:

gem 'gemname', '1.0', :path => 'vendor/gemname'

答案 1 :(得分:9)

Gemfile中的

gem 'blah', :git => 'https://github.com/XXX/YYY.git'

答案 2 :(得分:8)

  1. 在github上分叉
  2. 在Gemfile
  3. 中指定gem依赖项时,使用:git选项将应用程序指向修改后的gem

答案 3 :(得分:1)

您可以设置Geminabox之类的自定义gem服务器。不幸的是,它是专为LAN设计的,没有内置身份验证。您可以通过Rack :: Auth中间件保护它,或使用Rack :: Mount将其附加到秘密路径。如果这太繁琐,你可以使用像Gemfury这样的私人宝石托管服务(免责声明:我在这项服务上工作)。完成其中任一设置后,只需将以下内容添加到Gemfile:

source 'https://custom-gem-server.com/secret-token/'