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
|
||||
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
|
||||
exec "$libexec/git" "$@"
|
||||
elif [ -x "$libexec/git-$cmd" ] && [ -f "$libexec/git-$cmd" ]; then
|
||||
exec "$libexec/git" "$@"
|
||||
elif type "git-$cmd" >/dev/null 2>&1; then
|
||||
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" "$@"
|
||||
else
|
||||
exec "$libexec/git" "$@"
|
||||
|
|
Loading…
Reference in a new issue