Merge branch 'jc/maint-name-hash-clear'
[git] / Documentation / install-doc-quick.sh
1 #!/bin/sh
2 # This requires a branch named in $head
3 # (usually 'man' or 'html', provided by the git.git repository)
4 set -e
5 head="$1"
6 mandir="$2"
7 SUBDIRECTORY_OK=t
8 USAGE='<refname> <target directory>'
9 . "$(git --exec-path)"/git-sh-setup
10 cd_to_toplevel
11
12 test -z "$mandir" && usage
13 if ! git rev-parse --verify "$head^0" >/dev/null; then
14         echo >&2 "head: $head does not exist in the current repository"
15         usage
16 fi
17
18 GIT_INDEX_FILE=`pwd`/.quick-doc.index
19 export GIT_INDEX_FILE
20 rm -f "$GIT_INDEX_FILE"
21 trap 'rm -f "$GIT_INDEX_FILE"' 0
22
23 git read-tree $head
24 git checkout-index -a -f --prefix="$mandir"/
25
26 if test -n "$GZ"; then
27         git ls-tree -r --name-only $head |
28         xargs printf "$mandir/%s\n" |
29         xargs gzip -f
30 fi
31 rm -f "$GIT_INDEX_FILE"