そろそろ整理しておきたい、Gemコマンドの使い方
Rubyのパッケージ管理システムであるGemを使う機会も増えてきたので、そろそろコマンドをまとめておくことにしました。
RubyGemsとは?
Wikipediaより引用
RubyGemsは、Ruby言語用のパッケージ管理システムであり、Rubyのプログラムと("gem" と呼ばれる)ライブラリの配布用標準フォーマットを提供している。gemを容易に管理でき、gemを配布するサーバの機能も持つ。Rubyバージョン1.9以降では標準ライブラリの一部となっている。
便利なGemパッケージが世の中には沢山配布されているので、有効に活用していきたいですね!
Gemの公式マニュアルは以下になります。
RubyGems Manuals
それでは、よく使うGemコマンドを用途別にまとめていきます。
Gemを探す
listまたはsearchは、ローカルもしくはリモートにあるGemパッケージを検索します。
2つのコマンドはほぼ同じ動作をします。違いは以下の点です。
list: **<span style={{ color: "#ff0000" }}>Gemパッケージ名の頭から文字列を指定して**検索
search: **<span style={{ color: "#ff0000" }}>Gemパッケージ名を正規表現で**検索
| コマンド | 機能 |
|---|---|
| gem [list / search] [String] [options] | Stringで始まるGemを表示する |
以下のオプションを指定することができます。
| オプション | 機能 |
|---|---|
| -i, --[no-]installed | インストール済み[でない]Gemに限定する |
| -d, --[no-]details | 詳細を併せて表示する |
| -l, --local | localを対象とする |
| -r, --remote | remoteを対象とする |
| -b, --both | local, remoteどちらも対象とする |
デフォルトで指定されているオプション
--local --no-details
デフォルトでは<span style={{ color: "#ff0000" }}>--localが指定されているので、外部のを探したい時は<span style={{ color: "#ff0000" }}>-r指定しないとダメですね〜。
また、インストールしてあったけどこれ何だっけ? って時には
gem list GEMNAME -d
で中身を確認します。便利ですね!
なお、Gemパッケージは以下のWebサイトでも探すことができます。
RubyGems.org
The Ruby Toolbox
Gemをインストールする
Gemパッケージをインストールするコマンドです。
| コマンド | 機能 |
|---|---|
| gem install [GEMNAME] [options] | localまたはremoteからGemパッケージをインストール |
以下のオプションを指定することができます。
| オプション | 機能 |
|---|---|
| -v, --version | バージョン指定 ex) -v "= 1.0.0" |
| --[no-]rdoc | Rdocドキュメントをダウンロードする[しない] |
| --[no-]ri | riドキュメントをダウンロードする[しない] |
| -l, --local | localからインストール |
| -r, --remote | remoteからインストール |
| -b, --both | local, remoteどちらからでも |
デフォルトで指定されているオプション
--both --version '>= 0' --rdoc --ri --no-force
--install-dir /my/gems/directory
個人的に使ったことが無いですが、ローカルからインストールする時は、.gemファイルのある場所に移動してからコマンドを実行するみたいです。
アンインストール
| コマンド | 機能 |
|---|---|
| gem uninstall [GEMNAME] | Gemパッケージをアンインストール |
versionが違うやつとかはややこしいのでこれで除いたりしますね。
インストールしたGemファイル(の場所)を探す
| コマンド | 機能 |
|---|---|
| gem which [GEMNAME] | localにあるGEMNAMEパスを表示する |
gemファイルが置いてある場所の階層が深かったりするので、地味に便利です。
ちなみに、
| コマンド | 機能 |
|---|---|
| gem unpack [GEMNAME] | GEMFILEをカレントディレクトリにコピーする |
**<span style={{ color: "#ff0000" }}>Gemの中身を見たい時**にはこちらの方が便利かもしれません。
Gem自身の管理
| コマンド | 機能 |
|---|---|
| gem update --system | Gem自身をupdateする |
| gem -v | Gemのバージョンを表示する |
あんまりやったことが無いです(汗)
ヘルプ
| コマンド | 機能 |
|---|---|
| gem help commands | 使用できるコマンドの一覧を表示する |
| gem help [command] | commandのヘルプを表示する |
| gem server | サーバーを立ててgemのマニュアルを表示する |
分からなくなったらとりあえずgem help commandです!
ビルド関連
自作したGemをビルドするときに使います。
こちらはまだ試していないので、、いずれ更新します!
参考になるサイト
RubyGemsの使い方 - ayaketanのプログラミング勉強日記
RubyGems Manuals
Ruby/Rubygems使い方まとめ