それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ruby bundle のコマンドをメモ

bundle コマンドの使い方

bundle コマンドは apt で入れている前提

apt install ruby-bundler

初期化

フォルダを作る

mkdir my-work
cd my-work

初期化する

bundle init

パッケージの追加

bundle add struct 
bundle add pry

パッケージの利用 / ソース作成

ファイルを作る

touch sample.rb
chmod +x sample.rb
cat <<EOS > sample.rb
#!/usr/bin/env ruby
require "pry"
require "struct"
EOS

パッケージ利用 / 実行する

bundle exec ./sample.rb

bundler 作成されるファイルとフォルダ

ここまででフォルダ構成は次のようになった。

takuya@uci$ ls -alt
合計 48
-rwxr-xr-x  1 takuya staff   51 2023-02-09 16:50 sample.rb
-rw-r--r--  1 takuya staff 1367 2023-02-09 16:48 Gemfile.lock
drwxr-xr-x 15 takuya staff  480 2023-02-09 16:48 .bin
-rw-r--r--  1 takuya staff  124 2023-02-09 16:48 Gemfile
drwxr-xr-x  3 takuya staff   96 2023-02-09 16:44 vendor

ruby bundle 特有のフォルダは次の通り。

  • .bin/
  • Gemfile
  • Gemfile.lock
  • vendor/

.bin

bundle install したパッケージが提供するコマンドが格納される。上記の例ではpry をインストールしたのでpry コマンドが作られている。

設定変更で変えられる。

vendor/bundle/ruby

ライブラリのインストール箇所。設定変更で変えられる

Gemfile

インストールするべきGemを指定している。

Gemfile.lock

実際にインストールしたGemについて保存している。バージョンの依存関係を解決したもの

sample.rb

今回作ったサンプルファイル

bundle 設定の確認

設定ファイルは .bundle/config に作られる。 path や bin を変えてみる。

今の設定の確認

bundle config

bundle 設定の変更

vendor/bundle を変更する

bundle config --local path .cache/bundle
bundle install # インストールし直し

変更された設定の確認

bundle config

設定を消す

rm .bundle/config

bundle コマンドの使い方の確認

bundle help 
bundle help config 
bundle help install 
bundle help add

まとめ

ざっとまとめるとこんな感じ。

mkdir work
cd work
bundle init 
bundle --local path .vendor/bundle
bundle add pry
bundle exec pry