diff options
Diffstat (limited to 'git-ls-remote-script')
-rwxr-xr-x | git-ls-remote-script | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/git-ls-remote-script b/git-ls-remote-script deleted file mode 100755 index 75f6027866..0000000000 --- a/git-ls-remote-script +++ /dev/null @@ -1,100 +0,0 @@ -#!/bin/sh -# -. git-sh-setup-script || die "Not a git archive" - -usage () { - echo >&2 "usage: $0 [--heads] [--tags] <repository> <refs>..." - exit 1; -} - -while case "$#" in 0) break;; esac -do - case "$1" in - -h|--h|--he|--hea|--head|--heads) - heads=heads; shift ;; - -t|--t|--ta|--tag|--tags) - tags=tags; shift ;; - --) - shift; break ;; - -*) - usage ;; - *) - break ;; - esac -done - -case "$#" in 0) usage ;; esac - -case ",$heads,$tags," in -,,,) heads=heads tags=tags other=other ;; -esac - -. git-parse-remote "$1" -peek_repo="$_remote_repo" -shift - -tmp=.ls-remote-$$ -trap "rm -fr $tmp-*" 0 1 2 3 15 -tmpdir=$tmp-d - -case "$peek_repo" in -http://* | https://* ) - if [ -n "$GIT_SSL_NO_VERIFY" ]; then - curl_extra_args="-k" - fi - curl -nsf $curl_extra_args "$peek_repo/info/refs" || exit 1 - ;; - -rsync://* ) - mkdir $tmpdir - rsync -rq "$peek_repo/refs" $tmpdir || exit 1 - (cd $tmpdir && find refs -type f) | - while read path - do - cat "$tmpdir/$path" | tr -d '\012' - echo " $path" - done && - rm -fr $tmpdir - ;; - -* ) - git-peek-remote "$peek_repo" - ;; -esac | -sort -t ' ' -k 2 | -while read sha1 path -do - case "$path" in - refs/heads/*) - group=heads ;; - refs/tags/*) - group=tags ;; - *) - group=other ;; - esac - case ",$heads,$tags,$other," in - *,$group,*) - ;; - *) - continue;; - esac - case "$#" in - 0) - match=yes ;; - *) - match=no - for pat - do - case "/$path" in - */$pat ) - match=yes - break ;; - esac - done - esac - case "$match" in - no) - continue ;; - esac - echo "$sha1 $path" -done |