RubyGemsコマンドについてまとめてみました

RubyGemsはRuby用のパッケージ管理システムであり、インストールやアンインストールなどを簡単に行えます。またBundlerを利用することでプロジェクト内で使用するRubygemsを管理できます。ここではRubyGemsコマンド、及びBundlerについて解説していきます。

基本コマンド

bash


# 最新バージョンをインストール
$ gem install <gem名>

# バージョンを指定してインストール
$ gem install <gem名> -v <バージョン>

# riデータ、RDocドキュメントを省く。インストール時間が短くなる。
# RDoc: ソースコードから生成されたHTMLドキュメント
$ gem install <gem名> --no-ri --no-rdoc

# 不要なGemライブラリをアンインストール
$ gem uninstall <gem名>

# インストール済Gemライブラリのリストを表示
$ gem list

# Gemライブラリを検索
$ gem search <キーワード>

# RubyGemsのアップデート
$ gem update --system

# インストール済のすべてのGemライブラリを更新
$ gem update

# 指定したインストール済のGemライブラリを更新
$ gem update <gem名>

Bundlerについて

プロジェクト内で使用するRubygemsを管理する仕組み。プロジェクトのトップに「Gemfile」テキストファイルを置き、この中にgemの名前(バージョンも書ける。)を記載する。開発環境とデプロイ環境で完全に同じバージョンのgemを使えるためバージョン違いのバグを回避できる。

bash


# Bundlerのインストール
$ sudo gem install bundler --no-rdoc --no-ri

# Gemfilesの作成
$ bundler init

# --pathを指定しないとRuby環境のGemディレクトリにインストールされるので注意。
# ディレクトリ名はvendor/bundleが推奨されている。
$ bundle install --path vendor/bundle

# Gemfiles内で指定されているGemを利用可能にし、指定したコマンドを実行する。
$ bundle exec <コマンド>

Gemfile


# 先頭に記述。インストール元がrubygemsであることを示す。
source "https://rubygems.org"

# インストールするgemを記述
gem "sinatra"
gem "unicorn"
gem "omniauth"

# バージョン指定も可能
gem 'rails', '4.2.4'

# バージョン指定も可能、メジャーバージョンは変更しない。
# 4.3.0 > version >= 4.2.4
gem 'rails', '~> 4.2.4'