Rubyのgemで管理するパッケージの特定のバージョンだけを削除する方法

By | 2016年9月10日

Rubyのgemでパッケージ管理を行っている際のバージョンアンインストールについてです。

特定バージョンをアンインストール

gemでは、パッケージの特定のバージョンのみを指定して削除することができます。

例えば、alpha版をインストールしてみたものの、やっぱり安定版に戻したいという場合に便利です。

以下では、Sassのalpha版を削除して安定版に戻したいという場合を例として、具体的な手順を紹介します。

インストールされているバージョンの確認

まず、現在のsassのバージョンを確認してみます。 

sassのalpha版

alpha版が使われていることがわかります。

次に、gemのlistコマンドで、インストールされているパッケージとそのバージョンの一覧を表示してみます。

gem list

コマンドを実行すると、gemで管理しているすべてのパッケージに関して、名前とインストールされているバージョンが表示されます。

この中からsassを探すと、

gem list で表示された sass

このように、alpha版と安定版がインストールされていることがわかります。

パッケージのアンインストール

それでは、このalpha版(4.0.0.alpha.1)だけをアンインストールしてみます。パッケージのアンインストールを行うには、以下のコマンドを使います。

sudo gem uninstall パッケージ名

今回は sass をアンインストールするので、以下のようにします。

sudo gem uninstall sass

実行すると、次のようにどのバージョンを削除するか聞かれます。

アンインストールするバージョンの選択

削除したいものの数字を入力すると、削除が実行されます。

パッケージの削除完了

バージョンを確認してみると、安定版に戻っていることがわかります。

sass安定版

古いバージョンをまとめてアンインストール

gem自体をアップデートした後などに、古いパッケージがそのまま残ってしまう場合があります。

これを削除するにはcleanupコマンドを使います。

gem cleanup

これを行うと、以下のように古いバージョンが全て削除されます。

cleanup前

gem cleanup 前

cleanup後

gem cleanup 後

かなりスッキリしました。

gemでは意図せず古いバージョンが残ってしまうことがあるので、アップデートの際などにcleanupするといいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です