2017年12月27日のブックマーク (1件)

  • git blameでプルリクエストの番号を表示する

    GitHubでプルリクエスト前提の開発をしていると、git blameで「なぜ、このコードがこうなっているのか」調べる際に、commit idではなくプルリクエストの番号を表示してほしくなります。 というわけで書いたのが git-blame-pr.pl。 以下のような感じで表示されるので、調査がはかどります。 $ git-blame-pr.pl lib/core/request.c (中略) PR #446 PR #606 h2o_iovec_t h2o_get_redirect_method(h2o_iovec_t method, int status) PR #606 { PR #606 if (h2o_memis(method.base, method.len, H2O_STRLIT("POST")) && !(status == 307 || status == 308)) PR

    ksss9
    ksss9 2017/12/27
    Rubyだとこんな感じかな。$ git blame --first-parent <file> | ruby -lne 'c,s=$_.split(/\s/, 2); m=`git show --oneline #{c}`; puts /Merge\s+(?:pull\s+request|pr)\s+\#?(\d+)\s/i =~ m ? sprintf("PR #%-9s #{s}", $1) : "#{c} #{s}"' | less