gitで作業中、対応するgithubのページを表示
モチベーション
git cloneして各種作業をしているときに、ふとそのレポジトリのgithubを開きたくなることがよくあります。例えば、新しいissueを立てたくなったとか、pull requestをgithubのwebからやりたくなったなど私はよくあります。複数のレポジトリを扱っていたりすると、今、何というプロジェクトのレポジトリで作業しているのか、branchなのか、forkなのか、をいちいち考えないと適切なgithubページにたどり着けません。
少し面倒だったのでgiturlというgemを作りました。
例
$ giturl . https://github.com/shinyaohtani/giturl/lib/
上記は `git clone` したレポジトリで作業中カレントディレクトリ `.` に対応するgithubページのURLを表示した例です。
引数に `-o` を付けるとブラウザでそのURLを開いてくれます。
$ giturl -o . https://github.com/shinyaohtani/giturl/lib/ # == ブラウザで上記URLが開きます ===
この場合、下記ページが開きます。
仕組み
中ではrubyから下記4種類のgitコマンドを呼んでいるだけです。仕組みは簡単ですが利便性は非常に高いです。
$ git rev-parse --is-inside-work-tree $ git rev-parse --show-prefix $ git rev-parse --abbrev-ref HEAD $ git config --get remote.origin.url
最後に
複数引数にも対応しています。一度お試しあれ。