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