summaryrefslogtreecommitdiff
path: root/bin/common
diff options
context:
space:
mode:
authorRaymaekers Luca <luca@spacehb.net>2025-08-25 14:20:33 +0200
committerRaymaekers Luca <luca@spacehb.net>2025-08-25 14:20:33 +0200
commitc63087722d371a8ca30486351e193501116cbdc3 (patch)
treef98c1e562d067215dba5e985c4bcfd69842db5c4 /bin/common
parent5a5e53cd8d7af716bba3eb7984cc127b548bc9f7 (diff)
parent5cd2cef151c5aa8102ee4555a02634d911c0c9dc (diff)
Merge branch 'main' of autumn:dotfiles
Diffstat (limited to 'bin/common')
-rwxr-xr-xbin/common/gt22
1 files changed, 13 insertions, 9 deletions
diff --git a/bin/common/gt b/bin/common/gt
index 03ca464..cf05a1e 100755
--- a/bin/common/gt
+++ b/bin/common/gt
@@ -20,7 +20,7 @@ touch "$REPOS" || exit 1
which parallel >/dev/null 2>&1 && parallel=1
help() {
- cat >&2 <<EOF
+ >&2 cat <<EOF
usage: gt [OPTION]
-a PATH add repo
-c COMMAND run 'git COMMAND' in each repo
@@ -66,18 +66,22 @@ while getopts ":a:c:f:dlsheu" opt; do
exit 1
fi
- repo="$(git rev-parse --show-toplevel)"
- remote_url="$(git remote show -n origin | awk '/^ Fetch/ {print $NF}')"
- # TODO: check if remote_url is not empty
+ repo="$(git rev-parse --show-toplevel 2>/dev/null)"
+ remote_url="$(git remote show -n origin 2>/dev/null | awk '/^ Fetch/ {print $NF}')"
+ if [ -z "$repo" ] || [ -z "$remote_url" ]
+ then
+ >&2 printf 'Couldn'\''t add '\''%s'\'', not a git repository.\n' "$OPTARG"
+ exit 1
+ fi
if grep "^$repo " "$REPOS" >/dev/null 2>&1; then
- printf >&2 'added already.\n'
- exit 3
+ >&2 printf 'added already.\n'
+ exit 1
fi
printf '%s %s\n' "$repo" "$remote_url" >>"$REPOS"
- printf >&2 'added.\n'
+ >&2 printf 'added.\n'
;;
c)
quit_when_no_repos
@@ -144,11 +148,11 @@ while getopts ":a:c:f:dlsheu" opt; do
;;
h) help ;;
:)
- printf >&2 -- '-%s requires argument\n' "$OPTARG"
+ >&2 printf -- '-%s requires argument\n' "$OPTARG"
exit 1
;;
?)
- printf >&2 -- 'Invalid option: -%s\n' "$OPTARG"
+ >&2 printf -- 'Invalid option: -%s\n' "$OPTARG"
exit 1
;;
esac