fish から GitHub の Pull Request 作成画面を開く
git open
の仕様が変わってしまって、うまく動かなくなったので突貫で作る
URL を指定してブラウザを開く
$ open "https://github.com/nojiri1098"
いつもリポジトリを格納している場所
$ ghq root
/Users/nojiri1098/ghq
リポジトリのディレクトリ
$ pwd
/Users/nojiri1098/ghq/github.com/nojiri1098/exapmle_repo
URL に必要な部分だけ切り取る
$ echo (string trim -c "/" (string split (ghq root) (pwd)))
github.com/nojiri1098/exapmle_repo
開いてみる
$ open https://(string trim -c "/" (string split (ghq root) (pwd)))
base branch を取得する
$ git show-branch -a 2>/dev/null \
| grep '\*' \
| grep -v (git rev-parse --abbrev-ref HEAD) \
| head -n1 \
| perl -ple 's/\[[A-Za-z]+-\d+\][^\]]+$//; s/^.*\[([^~^\]]+).*$/$1/'
master
current branch を取得する
$ git rev-parse --abbrev-ref HEAD
feature
関数にしておく
.config/fish/functions/basebranch.fish
function basebranch
git show-branch -a 2>/dev/null \
| grep '\*' \
| grep -v (git rev-parse --abbrev-ref HEAD) \
| head -n1 \
| perl -ple 's/\[[A-Za-z]+-\d+\][^\]]+$//; s/^.*\[([^~^\]]+).*$/$1/'
end
.config/fish/functions/currentbranch.fish
function currentbranch
git rev-parse --abbrev-ref HEAD
end
完成
$ open https://(string trim -c "/" (string split (ghq root) (pwd)))/compare/(basebranch)...(currentbranch)