PhpStorm でコードを理解する (コードを読む・構造を知る編)の続き。
経緯をたどる
コードを理解するために、コードが変更された経緯を理解するのが有効なこともある。そんなときに使える機能をまとめる。
Git連携
Git連携のLog機能・History機能(ファイル・ディレクトリの変更履歴)も便利だが、経緯をたどるために便利なのがAnnotate機能。
Annotate機能(git blameと同等)
- ショートカットキー未設定・エディタの右端の行番号を右クリックして「Annotate」を選択
コード行ごとに最終変更日時・変更者が確認できる機能。「バグを埋めだ犯人捜し」に使うわけじゃないよ!
日付・変更者名をクリックすると、同じコミットで変更したファイル一覧が表示できる
Annotateで表示される各行は右クリックするとコミット・リビジョンに関連付いたいくつかの操作ができるようになっている。
- Show Diff: その行が最後に変更されたときのファイル変更(Diff)を表示
- Annotate Revision: その行が最後の変更されたときのファイルを表示
- Annotate Previous Revision: その行が最後の変更される直前のファイルを表示
GitHub連携
「Find in Pull Request」プラグイン
GitHub.com / GitHub Enterprise を上流リポジトリで使い、プルリクエストを使った開発をしているなら、コード変更の経緯を知るのにこのプラグインが便利。
エディタ行で右クリックして「Find Pull Request」を選択
getAlias()
が変更されたプルリクエストのfiles 3.4 Remove more deprecated function calls by antograssiot · Pull Request #10009 · cakephp/cakephpにジャンプした。