如何在Rails项目中使用修改后的第三方库?

rya*_*ogo 3 ruby rubygems ruby-on-rails heroku

一些背景:

目前,我正在使用我正在开发的Rails项目中的Coderay gem(v 0.9.7).

我下载了该版本的源代码,并为Coderay团队计划在更高版本中发布的功能应用了一个补丁.

问题是:

  1. 如何在项目中使用此修改后的代码?

  2. 我正在使用Heroku作为现场网站.我如何在现场使用修改后的代码,因为现在我没有使用官方宝石?

jdl*_*jdl 5

你有几个选择.

1.定制宝石

您可以将修改后的gem源添加到github上,然后告诉Bundler使用您的代码.

Gemfile:

gem 'coderay', :git => 'git://github.com/ryanprayogo/coderay.git'
Run Code Online (Sandbox Code Playgroud)

(或者无论实际路径最终如何.)

邪恶的双胞胎

另一种选择是在供应商目录中执行Evil Twin.这就像你想要与库代码分开的黑客模式.

http://errtheblog.com/posts/67-evil-twin-plugin