私は、新しいRailsプロジェクトごとに新しいRubyをインストールしていました。これは、2つのプロジェクト間で競合する宝石がないようにすることは不可能だからです。
'bundle package'コマンドは、 'vendr / cache'ディレクトリにあるプロジェクト固有のgemのセットをフリーズする可能性があることを確認しました。
グローバルにインストールすることはありませんが、そのディレクトリに保存するだけです。
しかし、私がそれを行ったとき、「バンドルパッケージ」は、「ベンダー/キャッシュ」フォルダーに保存する前に、(グローバルに)gemをインストールすることになりました。
私は何か間違ったことをしましたか?バグですか?
packageコマンドは
.gem
、バンドル内のgemのファイルをにコピーします./vendor/cache
。
私の知る限り、Bundlerはgemのインストールを処理せず、それをgem
コマンドに渡します。Bundlerが行うことは、正しいバージョンのgemがアクティブ化されていることを確認することです。したがって、gemをパッケージ化する場合でも、後でそれらをインストールするときに、それらのgemを取得して、「グローバルに」インストールします。
それで、あなたの質問に答えるために:いいえ、あなたは何も悪いことをしませんでした、そしてこれはバグではなく意図された振る舞いです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加