mirror of
https://github.com/ivabus/pantry
synced 2024-11-22 08:25:07 +03:00
Have git shim sync if necessary
This commit is contained in:
parent
7f51d21305
commit
b2611e7df7
1 changed files with 10 additions and 1 deletions
|
@ -18,13 +18,22 @@ libexec="$(cd "$(dirname "$0")/.." && pwd)"/libexec
|
||||||
# extract the git subcommand
|
# extract the git subcommand
|
||||||
cmd=$(find_git_command "$@")
|
cmd=$(find_git_command "$@")
|
||||||
|
|
||||||
|
_provides() {
|
||||||
|
if foo="$(pkgx --provider git-"$cmd")"; then
|
||||||
|
echo "$foo"
|
||||||
|
else
|
||||||
|
# syncing is slow but let’s be sure about it
|
||||||
|
pkgx --sync --provider git-"$cmd"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
if [ -z "$cmd" ]; then
|
if [ -z "$cmd" ]; then
|
||||||
exec "$libexec/git" "$@"
|
exec "$libexec/git" "$@"
|
||||||
elif [ -x "$libexec/git-$cmd" ] && [ -f "$libexec/git-$cmd" ]; then
|
elif [ -x "$libexec/git-$cmd" ] && [ -f "$libexec/git-$cmd" ]; then
|
||||||
exec "$libexec/git" "$@"
|
exec "$libexec/git" "$@"
|
||||||
elif type "git-$cmd" >/dev/null 2>&1; then
|
elif type "git-$cmd" >/dev/null 2>&1; then
|
||||||
exec "$libexec/git" "$@"
|
exec "$libexec/git" "$@"
|
||||||
elif command -v pkgx >/dev/null 2>&1 && pkg=$(pkgx --provider git-"$cmd"); then
|
elif command -v pkgx >/dev/null 2>&1 && pkg=$(_provides); then
|
||||||
exec pkgx +"$pkg" "$libexec/git" "$@"
|
exec pkgx +"$pkg" "$libexec/git" "$@"
|
||||||
else
|
else
|
||||||
exec "$libexec/git" "$@"
|
exec "$libexec/git" "$@"
|
||||||
|
|
Loading…
Reference in a new issue