0

我正在为我的 2.3.15 rails 分支应用补丁,以解决最新的安全问题之一。

以前在我的 gem 文件中,我有 -

gem 'rails', '2.3.15'

一切都按预期工作。但是对于我的叉子,我有

gem 'rails', '2.3.15', :git => 'git@github.com:myrepo/rails.git', :branch => 'CVE-2013-0155-fix'

在进行捆绑安装,然后像往常一样使用捆绑执行 ruby​​ 脚本/服务器运行我的应用程序后,我收到此错误 -

| ./script/../config/boot.rb:64:in `require': no such file to load -- initializer (LoadError)

我想也许我只是把我的叉子弄乱了,但是当我将我的 gemfile 指向 rails git repo 时,我遇到了同样的问题。

gem 'rails', '2.3.15', :git => 'git@github.com:rails/rails.git', :tag => 'v2.3.15'

谁能向我解释发生了什么事?

4

1 回答 1

0

在这里找到一篇关于这个问题的优秀博文 - http://robanderson123.wordpress.com/2013/01/05/applying-backported-security-patches-to-rails-2-3/

最大的问题是 rails/2-3-stable 在 repo 中没有任何 gemspecs。长话短说,做了一个bundle install设置为 2.3.15 的导轨。将用于 activerecord 的 rails gemspecs 从规范目录中复制到bundle show rails我的 rails 分支中的每个相应目录中。除了我复制到 railties 目录的 rails gemspec 之外。

之后gem 'rails', '2.3.15', :git => 'git@github.com:myrepo/rails.git', :branch => 'my-2-3-branch'按预期工作。

于 2013-01-17T12:34:21.980 回答