Skip to content

Commit 4a39ec3

Browse files
committed
feat: add --remote flag
1 parent 3e587e4 commit 4a39ec3

1 file changed

Lines changed: 13 additions & 2 deletions

File tree

git-open.zsh

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ if [[ -z "$__UTILS_PATH" ]]; then
55
fi
66
. "$__UTILS_PATH"
77
silent=""
8+
git_remote_name=""
89

910
uriencode() {
1011
len="${#1}"
@@ -23,8 +24,12 @@ trim() {
2324

2425
git_get_remote() {
2526
remote=$(git remote -v | grep "(push)" | awk '{print $1, $2}')
26-
# Prefer "origin" remote if available, otherwise use the first one
27-
selected=$(echo "$remote" | grep "^origin " | head -1 | awk '{print $2}')
27+
if [[ -n "$git_remote_name" ]]; then
28+
selected=$(echo "$remote" | grep "^${git_remote_name} " | head -1 | awk '{print $2}')
29+
else
30+
# Prefer "origin" remote if available, otherwise use the first one
31+
selected=$(echo "$remote" | grep "^origin " | head -1 | awk '{print $2}')
32+
fi
2833
if [[ -z "$selected" ]]; then
2934
selected=$(echo "$remote" | head -1 | awk '{print $2}')
3035
fi
@@ -331,6 +336,7 @@ git_open() {
331336
echo
332337
echo "Flags:"
333338
echo " -s, --silent Silent mode (no output)"
339+
echo " -r, --remote <name> Use a specific remote (default: origin)"
334340
return 1
335341
fi
336342

@@ -395,6 +401,11 @@ while true; do
395401
shift
396402
silent="-s"
397403
;;
404+
-r | --remote)
405+
shift
406+
git_remote_name="$1"
407+
shift
408+
;;
398409
*) break ;;
399410
esac
400411
done

0 commit comments

Comments
 (0)