Simplify git-config calls

This commit is contained in:
Sorin Ionescu 2012-09-29 23:17:39 -04:00
parent 2bee82dc2a
commit 39a793af0a
2 changed files with 5 additions and 10 deletions

View File

@ -17,17 +17,15 @@ _arguments -C -s -S \
case "$state" in
(remote)
remotes=($(
git config --local --get-regexp 'remote.*.url' \
| awk 'BEGIN {FS="."} ; {print $2}'
))
remotes=($(git config --get-regexp 'remote.*.url' | cut -d. -f2))
_describe -t branch 'remotes' remotes && ret=0
;;
(branch-or-tag)
remote="$words[(($CURRENT - 1))]"
branches_or_tags=($(
git ls-remote --heads --tags "$remote" | awk '{print $2}'
git ls-remote --heads --tags "$remote" 2>/dev/null | cut -f2
))
branches=(HEAD ${${(M)branches_or_tags[@]##refs/heads/?##}##refs/heads/})

View File

@ -8,10 +8,7 @@
local remotes remote references reference file url
remote="${1:-origin}"
remotes=($(
git config --local --get-regexp 'remote.*.url' \
| awk 'BEGIN {FS="."} ; {print $2}'
))
remotes=($(git config --get-regexp 'remote.*.url' | cut -d. -f2))
if (( $remotes[(i)$remote] == $#remotes + 1 )); then
print "$0: remote not found: $remote" >&2
@ -19,7 +16,7 @@ if (( $remotes[(i)$remote] == $#remotes + 1 )); then
fi
url=$(
git config --local --get "remote.${remote}.url" \
git config --get "remote.${remote}.url" \
| sed -En "s/(git|https?)(@|:\/\/)github.com(:|\/)(.+)\/(.+).git/https:\/\/github.com\/\4\/\5/p"
)