t3200-branch: test -M
[git] / Documentation / install-doc-quick.sh
1 #!/bin/sh
2 # This requires git-manpages and/or git-htmldocs repositories
3
4 repository=${1?repository}
5 destdir=${2?destination}
6
7 head=master GIT_DIR=
8 for d in "$repository/.git" "$repository"
9 do
10         if GIT_DIR="$d" git rev-parse refs/heads/master >/dev/null 2>&1
11         then
12                 GIT_DIR="$d"
13                 export GIT_DIR
14                 break
15         fi
16 done
17
18 if test -z "$GIT_DIR"
19 then
20         echo >&2 "Neither $repository nor $repository/.git is a repository"
21         exit 1
22 fi
23
24 GIT_WORK_TREE=$(pwd)
25 GIT_INDEX_FILE=$(pwd)/.quick-doc.$$
26 export GIT_INDEX_FILE GIT_WORK_TREE
27 rm -f "$GIT_INDEX_FILE"
28 trap 'rm -f "$GIT_INDEX_FILE"' 0
29
30 git read-tree $head
31 git checkout-index -a -f --prefix="$destdir"/
32
33 if test -n "$GZ"
34 then
35         git ls-tree -r --name-only $head |
36         xargs printf "$destdir/%s\n" |
37         xargs gzip -f
38 fi
39 rm -f "$GIT_INDEX_FILE"