aboutsummaryrefslogtreecommitdiff
path: root/checkout-tl.sh
blob: 48dd8d6143310ff00ac53816cedfa133c7d60dcb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/sh
PWD=$(dirname $0)
cd ${PWD}

. ${PWD}/variables.conf

function check_branch {
    URL=$(svn info | grep ^URL | sed 's/.*: //')
}

if [[ $1 == "dev"  ]];then
    rsync -a --delete --exclude=.svn tug.org::tldevsrc/Build/source .
else
    rsync -a --delete --exclude=.svn tug.org::tldevsrc/Build/source .
    if [[ -d ${PWD}/source ]];then
	cd ${PWD}/source
	svn info 2>/dev/null
	if [[ $? -ne 0 ]];then
	    cd ..
	    rm -rf ${PWD}/source
	    svn co --config-option config:miscellany:use-commit-times=yes \
		svn://tug.org/texlive/branches/branch${TL_BRANCH}/Build/source
	else
	    check_branch
	    if [[ ${URL} == "svn://tug.org/texlive/branches/branch${TL_BRANCH}/Build/source" ]];then
		svn revert -R .
		svn cleanup . --remove-unversioned --remove-ignored
		svn update
	    else
		echo "I don't know what to do with your source/ directory. Please rename it"
		echo "or remove it then re-run this command."
	    fi
	fi
    else
	svn co --config-option config:miscellany:use-commit-times=yes \
	    svn://tug.org/texlive/branches/branch${TL_BRANCH}/Build/source
    fi
    cd ${PWD}
fi