git-format-patch: add --no-binary to omit binary changes in the patch.
[gitweb.git] / git-parse-remote.sh
index c46131f6d6619aa07ddb72265583b1de0832ff3e..695a4094bb4230341618bd6f16d0bea9bff2e826 100755 (executable)
@@ -2,15 +2,18 @@
 
 # git-ls-remote could be called from outside a git managed repository;
 # this would fail in that case and would issue an error message.
-GIT_DIR=$(git-rev-parse --git-dir 2>/dev/null) || :;
+GIT_DIR=$(git rev-parse --git-dir 2>/dev/null) || :;
 
 get_data_source () {
        case "$1" in
        */*)
                echo ''
                ;;
+       .)
+               echo self
+               ;;
        *)
-               if test "$(git-config --get "remote.$1.url")"
+               if test "$(git config --get "remote.$1.url")"
                then
                        echo config
                elif test -f "$GIT_DIR/remotes/$1"
@@ -31,8 +34,11 @@ get_remote_url () {
        '')
                echo "$1"
                ;;
+       self)
+               echo "$1"
+               ;;
        config)
-               git-config --get "remote.$1.url"
+               git config --get "remote.$1.url"
                ;;
        remotes)
                sed -ne '/^URL: */{
@@ -49,18 +55,18 @@ get_remote_url () {
 }
 
 get_default_remote () {
-       curr_branch=$(git-symbolic-ref -q HEAD | sed -e 's|^refs/heads/||')
-       origin=$(git-config --get "branch.$curr_branch.remote")
+       curr_branch=$(git symbolic-ref -q HEAD | sed -e 's|^refs/heads/||')
+       origin=$(git config --get "branch.$curr_branch.remote")
        echo ${origin:-origin}
 }
 
 get_remote_default_refs_for_push () {
        data_source=$(get_data_source "$1")
        case "$data_source" in
-       '' | branches)
+       '' | branches | self)
                ;; # no default push mapping, just send matching refs.
        config)
-               git-config --get-all "remote.$1.push" ;;
+               git config --get-all "remote.$1.push" ;;
        remotes)
                sed -ne '/^Push: */{
                        s///p
@@ -101,9 +107,9 @@ canon_refs_list_for_fetch () {
                shift
                if test "$remote" = "$(get_default_remote)"
                then
-                       curr_branch=$(git-symbolic-ref -q HEAD | \
+                       curr_branch=$(git symbolic-ref -q HEAD | \
                            sed -e 's|^refs/heads/||')
-                       merge_branches=$(git-config \
+                       merge_branches=$(git config \
                            --get-all "branch.${curr_branch}.merge")
                fi
                if test -z "$merge_branches" && test $is_explicit != explicit
@@ -137,20 +143,20 @@ canon_refs_list_for_fetch () {
                fi
                case "$remote" in
                '' | HEAD ) remote=HEAD ;;
-               refs/heads/* | refs/tags/* | refs/remotes/*) ;;
+               refs/*) ;;
                heads/* | tags/* | remotes/* ) remote="refs/$remote" ;;
                *) remote="refs/heads/$remote" ;;
                esac
                case "$local" in
                '') local= ;;
-               refs/heads/* | refs/tags/* | refs/remotes/*) ;;
+               refs/*) ;;
                heads/* | tags/* | remotes/* ) local="refs/$local" ;;
                *) local="refs/heads/$local" ;;
                esac
 
                if local_ref_name=$(expr "z$local" : 'zrefs/\(.*\)')
                then
-                  git-check-ref-format "$local_ref_name" ||
+                  git check-ref-format "$local_ref_name" ||
                   die "* refusing to create funny ref '$local_ref_name' locally"
                fi
                echo "${dot_prefix}${force}${remote}:${local}"
@@ -163,9 +169,13 @@ get_remote_default_refs_for_fetch () {
        case "$data_source" in
        '')
                echo "HEAD:" ;;
+       self)
+               canon_refs_list_for_fetch -d "$1" \
+                       $(git for-each-ref --format='%(refname):')
+               ;;
        config)
                canon_refs_list_for_fetch -d "$1" \
-                       $(git-config --get-all "remote.$1.fetch") ;;
+                       $(git config --get-all "remote.$1.fetch") ;;
        branches)
                remote_branch=$(sed -ne '/#/s/.*#//p' "$GIT_DIR/branches/$1")
                case "$remote_branch" in '') remote_branch=master ;; esac
@@ -177,7 +187,7 @@ get_remote_default_refs_for_fetch () {
                                        }' "$GIT_DIR/remotes/$1")
                ;;
        *)
-               die "internal error: get-remote-default-ref-for-push $1" ;;
+               die "internal error: get-remote-default-ref-for-fetch $1" ;;
        esac
 }
 
@@ -244,7 +254,7 @@ get_uploadpack () {
        data_source=$(get_data_source "$1")
        case "$data_source" in
        config)
-               uplp=$(git-config --get "remote.$1.uploadpack")
+               uplp=$(git config --get "remote.$1.uploadpack")
                echo ${uplp:-git-upload-pack}
                ;;
        *)