summaryrefslogtreecommitdiff
path: root/pbs-package-merge
blob: b0fafc90540306b8275b3f630cc4917b9dfe4271 (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/bash -euE

. libremessages

cmd=${0##*/}
usage() {
	echo "Usage: $cmd [OPTIONS]"
	echo 'Fetches and merges changes from an upstream package'
	echo ''
	echo 'The repository and refspec that are merged are controlled by the'
	echo 'file `pbstrack`.'
	echo ''
	echo 'Options:'
	echo '  -h            Show this message'
}

main() {
	while getopts 'h' arg; do
		case $arg in
			h) usage; return 0;;
			*) usage; return 1;;
		esac
	done
	shift $(($OPTIND - 1))
	if [[ $# > 0 ]]; then
		usage
		return 1
	fi

	if [[ ! -f .git ]]; then
		error "Must be in a package directory"
	fi
	if [[ ! -r pbstrack ]]; then
		error "No pbstrack file found, don't know where to pull from"
	fi
	git pull $(cat pbstrack)
}

main "$@"