Gemfile.old 未找到
Gemfile.old not found
我对 Gemfile 进行了一些更改,但我想跟踪上一个文件中的内容。所以我只是将旧的更改为 Gemfile.old expectind 它会被忽略。但经过一些更改并运行捆绑后,rails 服务器由于找不到此文件而停止运行。
这是日志。
/Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler/definition.rb:22:in `build': /Users/viniciusbolzani/work/cart/Gemfile.old not found (Bundler::GemfileNotFound)
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:155:in `definition'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:118:in `setup'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:134:in `require'
from /Users/viniciusbolzani/work/cart/config/application.rb:7:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:121:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:121:in `require'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `block in server'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:128:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:39:in `require'
from /Users/viniciusbolzani/work/cart/bin/rails:8:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/rails.rb:27:in `load'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/rails.rb:27:in `call'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/command.rb:7:in `call'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client.rb:26:in `run'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/bin/spring:48:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/binstub.rb:11:in `load'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/binstub.rb:11:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/viniciusbolzani/work/cart/bin/spring:16:in `<top (required)>'
from bin/rails:3:in `load'
from bin/rails:3:in `<main>'
有谁知道为什么 Rails 会将该扩展名识别为真实文件并需要它?
不需要存储旧版本的 Gemfile,因为 rails 考虑了名为 Gemfile 的文件中提到的所有 gem,您可以使用版本控制工具,例如 github 或用于此目的的 bitbucket。
每次您添加新的 gem 时,Gemfile.lock 文件都会向其添加 gem 名称和版本,以确保它知道您所做的最后一次更改。在诸如此类的情况下,您打算保留多个同名文件,最终可能会造成更多混乱。此外,Gemfile.lock 存储了所用 gem 的所有版本,因此您有一个知道使用了哪些版本号。
我真的认为你的配置有问题。
在您的应用程序的 bin 目录中,有一些可执行文件指定应如何处理 Gemfile 文件名。默认文件名是 Gemfile 但它可能已被更改。
我建议你执行
grep -R -i -n 'Gemfile.old' *
在您的应用程序的根目录上并检查是否有任何引用使用此名称。如果是这种情况,请相应地进行更改。
我对 Gemfile 进行了一些更改,但我想跟踪上一个文件中的内容。所以我只是将旧的更改为 Gemfile.old expectind 它会被忽略。但经过一些更改并运行捆绑后,rails 服务器由于找不到此文件而停止运行。
这是日志。
/Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler/definition.rb:22:in `build': /Users/viniciusbolzani/work/cart/Gemfile.old not found (Bundler::GemfileNotFound)
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:155:in `definition'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:118:in `setup'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.11/lib/bundler.rb:134:in `require'
from /Users/viniciusbolzani/work/cart/config/application.rb:7:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:121:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:121:in `require'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `block in server'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:128:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:39:in `require'
from /Users/viniciusbolzani/work/cart/bin/rails:8:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/rails.rb:27:in `load'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/rails.rb:27:in `call'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client/command.rb:7:in `call'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/client.rb:26:in `run'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/bin/spring:48:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/binstub.rb:11:in `load'
from /Users/viniciusbolzani/.rvm/gems/ruby-2.1.5/gems/spring-1.2.0/lib/spring/binstub.rb:11:in `<top (required)>'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/viniciusbolzani/.rvm/rubies/ruby-2.1.5/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/viniciusbolzani/work/cart/bin/spring:16:in `<top (required)>'
from bin/rails:3:in `load'
from bin/rails:3:in `<main>'
有谁知道为什么 Rails 会将该扩展名识别为真实文件并需要它?
不需要存储旧版本的 Gemfile,因为 rails 考虑了名为 Gemfile 的文件中提到的所有 gem,您可以使用版本控制工具,例如 github 或用于此目的的 bitbucket。
每次您添加新的 gem 时,Gemfile.lock 文件都会向其添加 gem 名称和版本,以确保它知道您所做的最后一次更改。在诸如此类的情况下,您打算保留多个同名文件,最终可能会造成更多混乱。此外,Gemfile.lock 存储了所用 gem 的所有版本,因此您有一个知道使用了哪些版本号。
我真的认为你的配置有问题。
在您的应用程序的 bin 目录中,有一些可执行文件指定应如何处理 Gemfile 文件名。默认文件名是 Gemfile 但它可能已被更改。
我建议你执行
grep -R -i -n 'Gemfile.old' *
在您的应用程序的根目录上并检查是否有任何引用使用此名称。如果是这种情况,请相应地进行更改。