by shigemk2

当面は技術的なことしか書かない

hubコマンドで現在のブランチからpull-requestのページに飛べたら飛ぶ

oh-my-zshのgitプラグインとhubコマンド必須

.oh-my-zsh/plugins/git/git.plugin.zsh

function current_branch() {
  ref=$(git symbolic-ref HEAD 2> /dev/null) || \
  ref=$(git rev-parse --short HEAD 2> /dev/null) || return
  echo ${ref#refs/heads/}
}

function current_repository() {
  ref=$(git symbolic-ref HEAD 2> /dev/null) || \
  ref=$(git rev-parse --short HEAD 2> /dev/null) || return
  echo $(git remote -v | cut -d':' -f 2)
}
# requires oh-my-zsh/git
function current_hub_pull_branch() {
    echo ${$(current_repository | awk '{print $1}')%.git}/pull/$(current_branch)
}

条件

  • ブランチがpushされていること
  • PRが出されていること
  • 同じブランチで複数のPRが出されていないこと
hub browse $(current_hub_pull_branch)

あとはよしなに。

FYI

$ git config --global alias.see browse