summaryrefslogtreecommitdiff
path: root/.local/bin/development/gitw
diff options
context:
space:
mode:
authorVikas Kushwaha <dev@vikas.rocks>2024-11-21 13:30:52 +0530
committerVikas Kushwaha <dev@vikas.rocks>2024-11-21 13:30:52 +0530
commit5c916d69d457101326803eb076a746060e3618cf (patch)
treed6fce3256eede1c1bf78fb6a1be75b9cc4b84cee /.local/bin/development/gitw
Moved from github
Diffstat (limited to '.local/bin/development/gitw')
-rwxr-xr-x.local/bin/development/gitw18
1 files changed, 18 insertions, 0 deletions
diff --git a/.local/bin/development/gitw b/.local/bin/development/gitw
new file mode 100755
index 0000000..881c81c
--- /dev/null
+++ b/.local/bin/development/gitw
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# git-web: open the url of current git repositary in a web browser.
+# USAGE: gitw [remote]
+# 'remote' is set to origin if not provided.
+
+err() { printf "gitw: %s\n" "$@" >&2; exit 1; }
+
+git rev-parse --is-inside-work-tree >/dev/null || exit
+
+remote="${1:-origin}"
+url="$(git remote get-url "$remote" |
+ sed "s|^git@\(\S\+\):|https://\1/|")" || exit
+
+[ -z "$url" ] || [ "$remote" = "$url" ] &&
+ err "remote has no url: $remote"
+
+xdg-open "$url"