LoginSignup
6
4

More than 5 years have passed since last update.

pry の履歴を Bundler のプロジェクトごとに別々にする

Last updated at Posted at 2015-06-07

役に立つのかどうかよくわかりませんが、できるっぽいということがわかったのでメモを残しておきます。

Pry の履歴はデフォルトで ~/.pry_history に保存されています。これは、~/.pryrc を適当に設定することで変更することが出来ます

ところで、Bundler を使用しているプロジェクトでは、メソッド Bundler.root によりプロジェクトのルートディレクトリ (要は Gemfile とかを置いてあるディレクトリ) が取得できます。

ということで、~/.pryrc に以下のような記述をすることで、タイトル通り Pry の履歴を Bundler のプロジェクト別にすることができます。

.pryrc
Pry.config.history.file = Bundler.root.join ".pry_history" if defined? Bundler

ちなみに、Rails プロジェクトにおいても Bundler と Pry (pry-rails) を使っていれば、 bundle exec rails c などで立ち上げた場合もこれは有効になります。

例えば

  • /home/ichigo/some-gem
  • /home/ichigo/rails-project-aikatsu8
  • /home/ichigo/rails-project-soleil

において、 Pry の履歴ファイルはそれぞれ

  • /home/ichigo/some-gem/.pry_history
  • /home/ichigo/rails-project-aikatsu8/.pry_history
  • /home/ichigo/rails-project-soleil/.pry_history

というような感じになります。

ただ、このままだと git status とかしたときに常時 .pry_history が unstaged なファイルとして表示されてしまうと思うので、その時は global gitignore を設定するなどすると良いと思います。

6
4
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
6
4