2016-09-21 3 views
1

GemをプロジェクトのGemfileに初めて追加すると、別のプロジェクトで作業中にgemをインストールしたときに、既存のバージョン利用可能な宝石の最新バージョンではなく、例えばGemfile.lockに記載されていない最新バージョンのGemfile.lockをインストールする方法

は、バンドラバージョン1.11.2を使用して、私はプロジェクトのGemfilegem 'rubocop'を追加し、bundle installを実行すると、むしろ0.44の(2016年10月21のような)現在のバージョンよりも、RuboCopバージョン0.42.0を使用して、それが生じました。 1:bundle update rubocopを実行

rubocop (0.42.0) 
    parser (>= 2.3.1.1, < 3.0) 
    powerpack (~> 0.1) 
    rainbow (>= 1.99.1, < 3.0) 
    ruby-progressbar (~> 1.7) 
    unicode-display_width (~> 1.0, >= 1.0.1) 

は、任意の既存の宝石は、彼らのバージョンが変更せずに、使用されているバージョン0.44.1になりました。これはRuboCopバージョン0.44.1を使用して私を購入する制約がないことを示しています。

rubocop (0.44.1) 
    parser (>= 2.3.1.1, < 3.0) 
    powerpack (~> 0.1) 
    rainbow (>= 1.99.1, < 3.0) 
    ruby-progressbar (~> 1.7) 
    unicode-display_width (~> 1.0, >= 1.0.1) 

bundle install、どのように私は宝石の最新互換性のあるバージョンをダウンロードするのではなく、上で利用可能であることを起こる古いバージョンを使用して、Gemfile.lockに記載されていない宝石のために、それを伝えることができますを実行していますローカルマシン?

私はhttp://bundler.io/v1.13/man/bundle-install.1.htmlを見てみましたが、関連性はありませんでした。

+0

「ロックファイルには記載されていません」とはどういう意味ですか?ロックファイルになければ、それはgemfileの宝石やその依存関係の一つではないので、バンドルはそれとは関係ありません。 –

+0

@SergioTulentsev「Gemfile」に宝石を追加したばかりで、まだ 'bundle install'を実行していないときに、' Gemfile.lock'に宝石がリストアップされます。 –

+0

バンドラで最新バージョンがインストールされていないことを確認してください。私はそれがそうだと思う。 –

答えて

0

最新のバージョンのgemを使用する場合は、Gemfileでバージョンを削除し、もう一度bundle installを実行してください。

+0

私は少なくとも私が使っていたバンドラのバージョンでは、このアプローチがうまくいかないことを示唆して、私の質問に再現例を追加しました。 –

関連する問題