Начальная проблема
Я использовал yaml_db
в проекте Rails, но похоже, что ветка по умолчанию имеет некоторые проблемы с логическими записями. Теперь я знаю, что на github есть ветка с фиксированной версией .
Я изменил свой Gemfile, так что эта ветка будет установлена вместо значения по умолчанию yaml_db
,
gem 'yaml_db', :git => "https://github.com/robsharp/yaml_db.git"
Я запускаю bundle install
, и он показывает:
Использование yaml_db (0.2.0) из https://github.com/robsharp/yaml_db.git (у мастера).
Ваш комплект готов! Он был установлен в /Users/user/.rvm/gems/ruby-1.9.2-p0
Fine. Теперь исправленный файл в репозитории Git должен иметь эту строку в lib/serialization_helper.rb
:
record[column] = convert_boolean(record[column])
Тем не менее, когда я смотрю на свой локальный файл, который является .rvm/gems/ruby-1.9.2-p0/bundler/gems/yaml_db-ca178cfb59cf/lib/serialization_helper.rb
, он все еще показывает не исправленную старую строку :
record[column] = (record[column] == 't' or record[column] == '1')
Хорошо, похоже, мой локальный файл не изменился.
Gem неправильно установлен
Запуск gem list
вообще не покажет yaml_db
. Я удалил файл блокировки Gem и снова установил пакет, но в моем списке Gem нет yaml_db
. Запуск gem install yaml_db
, конечно, устанавливает только сломанную версию.
Ручная установка
Я сейчас пытаюсь установить вручную из источника Git.
git clone https://github.com/robsharp/yaml_db.git
cd yaml_db
git checkout -b fix_boolean_checks_to_support_oracle
Тем не менее, файл serialization_helper.rb
обновляется неправильно. Я просто вручную изменил его и построил Gem. Теперь все отлично работает.
Мой новый вопрос: Почему он не проверит правильный файл?