#! /bin/sh
-exec webbrowser -n "`git config --get remote.$1.url`"
+
+if [ $# -ne 1 ]; then
+ echo "Usage: git open url_key" >&2
+ exit 1
+else
+ url_key="$1"
+fi
+
+if [ -z "$url_key" ]; then
+ echo "Usage: git open url_key" >&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 $url_key | sed 's!^git@\([-A-Za-z0-9._]\+\):!https://\1/!'`"