RubyGemsについて
RubyGemsとは
RubyGemsは、Ruby言語用のパッケージ管理システムであり、Rubyのプログラムと("gem" と呼ばれる)ライブラリの配布用標準フォーマットを提供している。gemを容易に管理でき、gemを配布するサーバの機能も持つ。Rubyバージョン1.9以降では標準ライブラリの一部となっている。
RubyGemsの歴史
使いかた
ライブラリを探す
Ruby のライブラリは主に RubyGems.org に gem として置かれている。直接ウェブサイトを閲覧したり、gem コマンドを使用してそれらを探すことができる。(gemコマンドについて知るにはRubyGems' docsを参照)
また、Ruby プロジェクトを探索しやすくするThe Ruby Toolbox もあり。
尚、gem としては RubyGems.org に公開されますが、gem のソースコードのほとんどは GitHub 上で確認可。
gemを探すコマンドは「list」「search」。
list と search は機能的に同じであるが、検索先のデフォルト指定が、ローカルとなっているか、リモートになっているかが違う。
従って、入手可能なgemの検索は search、インストール済みのgemの検索は list を使う等、使い分けるのが便利。
- 入手可能なgemを検索
$ gem list -r (オプションのrを指定しなければデフォルトはローカル(インストール済みgemを表示。-r 指定でRubyGemsのリモートリポジトリを検索し入手可能なgemを表示)
$ gem search (オプションのrを指定しなければデフォルトはリモート) - インストール済みのgemを調べる
$ gem list (オプションの l を指定しなければデフォルトはl:ローカル)
$ gem search -l (オプションの l を指定しなければデフォルトはr:リモート) - 文字列で入手可能なgemを検索(正規表現指定も可)する
$ gem list -r 検索したい文字列 (例:$ gem search -r html5)
$ gem search 検索したい文字列 (例:$ gem search html5) - インストール済みのgemを文字列で検索する
$ gem list 検索したい文字列
$ gem search -l 検索したい文字列
gemのインストールとアンインストール
- インストール
$ gem install 対象gem名 (例:$ gem install rails) - バージョンを指定したインストール
$ gem install -v 対象gem名 - アンインストール
$ gem uninstall 対象gem名
gemのアップデートの確認とアップデートとクリーンナップ
- アップデートのあるgemを確認
$ gem outdated - gemのアップデート(gem名を省略した場合は全て対象)
$ gem update アップデート対象gem名 - gemの掃除(アップデートすると古いバージョンのgemはそのまま残るが、cleanupコマンドで古いバージョンのGemを削除。gem名を省略した場合は全て対象)
$ gem cleanup 対象gem名
gemの場所を探す
- コマンドでインストールしたgemのPATHを調査する
$ gem which 対象gem名
ヘルプ
- 使用できるコマンドの一覧を表示する
$ gem help commands - コマンドのヘルプを表示する
$ gem help コマンド名
参考サイト
【Ruby】Gemコマンドの使い方まとめ - TASK NOTES
そろそろ整理しておきたい、Gemコマンドの使い方 - ばくのエンジニア日誌