Gemのバージョンアップ手順書
前提 本手順では、majorバージョンは考慮してません。 影響が低いと思われる、patch、minorの一括更新をスコープとしてます。
最新のバージョンを確認する(strictあり)
--strictはGemfileでの要件を考慮してアップデート計画を表示してくれる。 表示されたgemは全てアップデートすることを目標にする。
$ bundle outdated --strict Fetching gem metadata from https://rubygems.org/....... Resolving dependencies... Gem Current Latest Requested Groups actioncable 6.1.6 6.1.7.6 active_decorator 1.4.0 1.4.1 >= 0 default active_model_serializers 0.10.13 0.10.14 >= 0 default capistrano 3.17.1 3.18.0 >= 0 development, staging, mufg_staging patch versionのupdate
outdated —strictで出力されたpatch version upのgemを指定してversion up
$ bundle update gem名 ... --patch outdatedの出力例だとactioncableなどが対象。
ローカルでテスト(rspecなど)を実行しパスすることを確認する。
update --patchで残りのgemのpatch versionをversion up
$ bundle update --patch ローカルでテストがパスすることを確認する。
outdated —strictで出力されたminor version upのgemを指定してversion up
$ bundle update gem名 ... --minor outdatedの出力例だとcapistranoなどが対象。
ローカルでテスト(rspecなど)を実行しパスすることを確認する。
update --minorで残りのgemのminor versionをversion up
$ bundle update --minor ローカルでテストがパスすることを確認する。
最新のバージョンを確認する(strictなし)
Gemfileの要件を無視したアップデート計画を確認する。 内容を見て必要そうなものだけをアップデートすることを目標にする。 $ bundle outdated
最新のバージョンを確認する(strictあり)と更新手順は同じ。
This post is licensed under CC BY 4.0 by the author.