]> git.wincent.com - docvim.git/blob - bin/get
Teach bin/get to grab from HEAD, not master
[docvim.git] / bin / get
1 #!/bin/sh
2
3 # Get fresh copies of source files for the integration tests.
4 #
5 # Assumes source repos exist as peers of the current repo.
6
7 set -e
8
9 usage() {
10   echo "Get fresh copies of source files for use in integration tests."
11   echo
12   echo "Usage:"
13   echo
14   echo "  bin/get ferret      #"
15   echo "  bin/put pinnacle    # freshen a specific downstream"
16   echo "  bin/put scalpel     #"
17   echo "  bin/get vim-docvim  #"
18   echo "  ---------------------------------------------------"
19   echo "  bin/get all         # freshen all sources"
20   exit
21 }
22
23 update() {
24   local PROJECT
25   PROJECT="$1"
26   echo "Updating $PROJECT"
27   git --git-dir "../$PROJECT/.git" archive --prefix="$PROJECT/input/" HEAD \
28     | tar -x -C tests/fixtures/integration -f -
29   mkdir -p "tests/fixtures/integration/$PROJECT/golden"
30 }
31
32 if [ $# -eq 0 ]; then
33   usage
34 else
35   while [ $# -gt 0 ]; do
36     PROJECT=$1
37     shift
38     case $PROJECT in
39       all)
40         update ferret
41         update pinnacle
42         update scalpel
43         update vim-docvim
44         ;;
45       ferret|pinnacle|scalpel|vim-docvim)
46         update "$PROJECT"
47         ;;
48       *)
49         echo "Unrecognized project: $PROJECT"
50         echo
51         usage
52         ;;
53     esac
54   done
55 fi