X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=git-open;h=bb5d648f4f66488c4cb3fcb1dc4679baa37c48fd;hb=3d0fe69fdf2edb7c5b363711990f2d638cbc9ae7;hp=ab704711ae13a6618912d1adf07baebb69282c17;hpb=4217cefd152ebff211ea2997718e3096ade8ef9e;p=git-scripts.git diff --git a/git-open b/git-open index ab70471..bb5d648 100755 --- a/git-open +++ b/git-open @@ -1,2 +1,25 @@ #! /bin/sh -exec webbrowser -n "`git config --get remote.$1.url`" + +if [ -z "$1" ]; then + branch="`git rev-parse --abbrev-ref HEAD`" + remote="`git config --get branch.$branch.remote`" +elif [ -n "$2" ]; then + echo "Usage: git open [remote_name]" >&2 + exit 1 +else + remote="$1" +fi + +if [ -z "$remote" ]; then + echo "Cannot find remote for branch $branch" >&2 + echo "Usage: git open [remote_name]" >&2 + exit 1 +fi + +browser_section="`git config --get web.browser`" +browser_cmd="`git config --get browser.\"$browser_section\".cmd`" +if [ -z "$browser_cmd" ]; then + browser_cmd="webbrowser -n" +fi + +exec $browser_cmd "`git config --get remote.$remote.url`"