15
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Bundle コマンドまとめ

Last updated at Posted at 2019-01-24

なんか

  • gem instal bundler
  • bundler
  • bunble install

とかか色々あるけど、それぞれ何やってるのかごちゃごちゃしてるからまとめます
ちなみに使ってるフレームワークSinatraです

gem install bundler

というかまずgemって何かってところからなんですが

GemはRubyGemsが公開しているライブラリのことです。
RubyGemsはRuby用のパッケージ管理ツールで、ライブラリの作成や公開、インストールを助けるシステムです。

つまり、バージョン管理をいい感じにしてくれるrubyライブラリ管理するやつです。

引用元
https://tomoyuki65.com/what-is-rubys-gem/

で、「gem install bunder」
って何してるかっていうところなんですが、bundlerってgemを落としてるんです。コマンドよく見るとそのまんまです。

bundle install

それで、bundlerが1つにgemに過ぎないということはわかった。じゃあ、bundlerってgemは何をしてるのかというところですよ。

bundleて日本語訳すると、こん感じで束ねるって意味です。
gem のbundlerは、gemたちをまとめあげてくれてる人なんですよ。

スクリーンショット 2019-01-24 14.07.13.png

フレームワーク内でなんとなくライブラリ使えてると思いますが、ほんとはbundlerみたいに、gemを1つひとつインストールしないといけないんですよ。

gem install sinatra

みたいな感じで。

でもそれってとってもめんどくさいじゃないですか!!
んでですよ、それを解決するのが

bundle instal

なんですよ

そういえば、Gemfileに一覧でinstall ~~~って書くじゃないですか。
あれ全部あのコマンド1つでinstallしてくれるんですよ
すごいですよね

bundle, bundler

  • bundle
  • bunder
  • bundle install

ってなんかやるとどれも、同じような挙動するじゃないですか
僕もこれ何が違うんかなとずっと思ってたんですがほんとは

全部、おんなじらしいです。

ええええええええええええええ、ほんとかよ。
一旦それで進もう。

bundle update

なんかたまにエラーをググってると出てきますよね
これ、これ実は、

bundle install の友達なんですよ

bundle installするとinstall履歴がgemrock(スペル間違ってる気がする)に履歴みたいにして記録されるんですよ。
で、再度bundle installするとgemrock をみて、installしてないやつをinstallするんですね

でも、bundle updateは違って、gemrockは見ないで、gemfileに書いてあるgem強制的に全部installするらしいです。

へ〜〜って感じですよね。 できれば、bundle install -f みたいにして欲しかった

最後に

はいいいいいいいいい〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜。まとめ終了
おつかれ
間違ってたらごめんね

15
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?