]> git.phdru.name Git - git-scripts.git/blobdiff - git-open
Feat(submodules/remove): Add option `-c`
[git-scripts.git] / git-open
index bb5d648f4f66488c4cb3fcb1dc4679baa37c48fd..4cf59467c6de536417a0875dfe016c3201614b67 100755 (executable)
--- a/git-open
+++ b/git-open
@@ -1,25 +1,27 @@
 #! /bin/sh
 
-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
+if [ "x$1" = x-p ]; then
+    private="-p"
+    shift
+fi
+
+if [ $# -ne 1 ]; then
+   echo "Usage: git open [-p] url_key" >&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
+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.$remote.url`"
+exec $browser_cmd "`git config --get $url_key | sed 's!^git@\([-A-Za-z0-9._]\+\):!https://\1/!'`"