1. ホーム
  2. ruby-on-rails-3

[解決済み] rails3プロジェクトからgemsをアンインストールする最良の方法は何ですか?

2022-11-15 03:25:57

質問

私は Gemfile を介して bundler を使用してすべての gems をインストールしました。Gemfile から gem を削除して 'bundle install' を実行すると、削除した gem がアンインストールされると (勘違いして) 思っていました。私は bundler のヘルプ ファイルを見ましたが、私が知る限りでは、gem をアンインストールする方法はありません。

全てに gem uninstall x を使えばいいのでしょうか?これは bundler を混乱させることになるのでしょうか?

どのように解決するのですか?

Bundlerはアプリのルートディレクトリから起動されるので、アプリを動作させるために必要なgemがすべて存在していることを確認します。何らかの理由でgemが必要なくなった場合は

    gem uninstall gem_name 

のように、bundler を起動するたびに依存関係を再確認します。

編集 - 2014.12.24

私は人々がこの質問に来ることを見て、私は少し何かを追加することにしました。 私が与えた答えは、あなたのgemsをグローバルに管理する場合のものです。特定のプロジェクトにスコープされたgemsのセットを維持するために、rbenvやrvmのようなgemマネージャを使用することを検討してください。

つまり、グローバルレベルでは gems はインストールされないので、プロジェクトの Gemfile から gems を削除して bundle を再実行すると、明らかにプロジェクトに読み込まれません。その後、bundle clean (プロジェクト ディレクトリ) を実行すると、Gemfile (同じディレクトリ) からインストールされたものの、現時点ではもうそこにリストされていないすべての gems がシステムから削除されます...長い話を短くすると、これは未使用の gems を削除するものです。