summaryrefslogtreecommitdiff
path: root/.local/bin/putgitrepo
blob: 40052e3eb6f38ef64134264548d485ec02bf8591 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/sh
name=$USER
putgitrepo() {
	# Downloads a gitrepo $1 and places the files in $2 only overwriting conflicts
	[ -z "$3" ] && branch="master" || branch="$repobranch"
	dir=$(mktemp -d)
	[ ! -d "$2" ] && mkdir -p "$2"
	chown "$name":wheel "$dir" "$2"
	sudo -u "$name" git -C "$repodir" clone --depth 1 \
		--single-branch --no-tags -q --recursive -b "$branch" \
		--recurse-submodules "$1" "$dir"
	sudo -u "$name" cp -rfT "$dir" "$2"
}
putgitrepo "$@"