Я использую bundler для управления зависимостями в моем приложении rails, и у меня есть гем, размещенный в репозитории git, как указано ниже:
gem 'gem-name', :git => 'path/to/my/gem.git'
Чтобы обновить этот драгоценный камень, я выполняю, bundle update
но он также обновляет весь драгоценный камень, упомянутый в Gemfile. Так что команда для обновления только один конкретный камень?
Способ сделать это - запустить следующую команду:
источник
Похоже, что с более новыми версиями bundler (> = 1.14) это:
источник
Вам просто нужно указать имя гема в командной строке:
источник
bundle help update
говорит делать. Какую версию пакета вы используете?bundle update gem-name
обновит гем и "любую из его зависимостей".bundle update gem-name [--major|--patch|--minor]
Это также работает для зависимостей.
источник
--major
,--minor
И--patch
флаги автоматически обновить его до последней возможной версии.Я использовал
bundle update --source
себя в течение долгого времени, но есть сценарии, где это не работает. К счастью, есть драгоценный камень под названиемbundler-patch
который исправить этот недостаток.Я также написал небольшой пост в блоге о том, как использовать
bundler-patch
и почемуbundle update --source
не работает последовательно. Также обязательно ознакомьтесь с постом chrismo, в котором подробно объясняется, что--source
делает этот параметр.источник
bundler update --source gem-name
обновит хэш ревизии в Gemfile.lock, который вы можете сравнить с последним хэшем коммита этой ветки git (master по умолчанию).GIT remote: git@github.com:organization/repo-name.git revision: c810f4a29547b60ca8106b7a6b9a9532c392c954
можно найти по адресу
github.com/organization/repo-name/commits/c810f4a2
(я использовал сокращенный 8-символьный хеш коммит для URL)источник