| if [ "$2" = "tag" ]; then |
| merge_name="refs/tags/$3" |
| destination="$merge_name" |
| : ${GIT_OBJECT_DIRECTORY="${SHA1_FILE_DIRECTORY-"$GIT_DIR/objects"}"} |
| # remote_path="$1" local_file="$2" |
| test -f "$1" && cat >"$2" "$1" ;; |
| # remote_repo="$1" head_sha1="$2" |
| git-http-pull -a "$2" "$1/" |
| git-local-pull -l -a "$2" "$1/" |
| rsync -avz --ignore-existing \ |
| "$1/objects/." "$GIT_OBJECT_DIRECTORY"/. |
| echo "Getting remote $merge_name" |
| download_one "$merge_repo/$merge_name" "$GIT_DIR/$destination" || exit 1 |
| echo "Getting object database" |
| download_objects "$merge_repo" "$(cat "$GIT_DIR/$destination")" || exit 1 |