13

Rails アプリで使用されている gem をデバッグしようとしています。

Gem をローカルで複製して、いろいろ試してみました (またgit bisect、 などの素晴らしいことを実行できるようにもしました)。

# Gemfile
gem "active_admin", path: "~/dev-forks/active_admin"

しかし、Pry を Gemfile のどこかに追加して使用できるようにしたりrequire "pry"、そこに入れたくなくてもコード内で live を呼び出したりすることに行き詰まることがよくあります。たとえば、私は時々それを忘れて、バグを修正してから、Gemfile で Pry を使用してプロジェクトにコミットします。

私がそれをしなければ、LoadError意志が生じcannot load such file -- pry (LoadError)ます。

さまざまなコンテキスト (Rails プロジェクト、Gem、ローカル Ruby) と実際の gem (Gemfile、require、installed) の間で少し迷っています。

binding.pryGemfiles を介さずに、Rails 内の Gem で使用するにはどうすればよいですか?

4

2 に答える 2

2

Rails アプリで gem を使用してデバッグする場合は、アプリの Gemfile の開発およびテスト グループに配置する必要があります。

pry-debugger https://github.com/nixme/pry-debuggerなどのツールを使用して、pry セッションにブレークポイントを設定できますbreak SomeClass#run

バグを修正したり貢献したりするためにフォークするすべてのプロジェクトに pry を追加することは有効だと思います。ファイルに入れないでください.gemspec

レポに変更をプッシュする場合はbinding.pry、Jim が指摘したようにコミット フックを追加する必要があります。これはこじ開けに関連する問題ではないと思います。それは、差分をプッシュする前にどれだけ注意して確認するかにかかっています。

于 2013-08-07T20:31:56.077 に答える