not good but great

プログラミング、アート、映画・本の感想について書きます。

$LOAD_PATHにPATHを追加して、Forkしたgemをローカルで動かす

gemのcat_apiをfork

gemのcat_apiをforkした
GitHub - naoyashiga/cat_api

本買った。cat_apiのソース見ながら学習することにした。

ローカルリポジトリのgemを使いたい

gem install cat_api

これをすると本家のgemが読み込まれるだけで、自分が編集したものを実行できるわけではない。

Gemfileにローカルのpathを設定

・参考
Loading...

cd ..

ディレクトリをforkしcloneしたリポジトリの一つ上の階層へ移動。

gem install bundler

まずbundleをインストールする。

gem install bundler

Gemfileを作成

vim Gemfile

Gemfileを編集。

source "https://rubygems.org"

gem "cat_api",path:"cat_api"

bundle

必要なgemをinstallする。下のエラーが出たので、Xcodeコマンドラインツールをinstallした。
Yosemiteにアップデート後bundle install ができなくなった話 - Qiita

$LOAD_PATHにPATHを追加

`require': cannot load such file -- cat_api (LoadError)

エラーが出た。

・参考
RubygemはLOAD_PATHを順に辿っていくらしい。
RubyGemsはrequireの裏で何をやっているのか? - ブログのおんがえし

$LOAD_PATH<<"./cat_api/lib"
require "cat_api"

これで編集できるようになった!