lock_ref_sha1_basic does not remove empty directories on BSD
[gitweb.git] / git-clone.sh
index 7060bdab01f696c4a664fb243aac96b9a786f2f7..3998c55cef3658eda18817d513a5bd5003c30e89 100755 (executable)
@@ -31,6 +31,10 @@ clone_dumb_http () {
        cd "$2" &&
        clone_tmp="$GIT_DIR/clone-tmp" &&
        mkdir -p "$clone_tmp" || exit 1
+       if [ -n "$GIT_CURL_FTP_NO_EPSV" -o \
+               "`git-repo-config --bool http.noEPSV`" = true ]; then
+               curl_extra_args="${curl_extra_args} --disable-epsv"
+       fi
        http_fetch "$1/info/refs" "$clone_tmp/refs" || {
                echo >&2 "Cannot get remote repository information.
 Perhaps git-update-server-info needs to be run there?"
@@ -298,7 +302,7 @@ yes,yes)
                fi
                git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" || exit 1
                ;;
-       https://*|http://*)
+       https://*|http://*|ftp://*)
                if test -z "@@NO_CURL@@"
                then
                        clone_dumb_http "$repo" "$D"