summaryrefslogtreecommitdiff
path: root/bin/git-start
blob: 550112ced8b257190ac3d5b5824c87a1bdb783c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/bash -e

# Create a branch: `git start BRANCHNAME` (protip: run `git remote update`
# first.) The new branch will track origin/main by default, or origin/master if
#origin/main doesn't exist. Tracking info gets used by most other scripts.

if git rev-parse --quiet --verify origin/main > /dev/null; then
	exec git checkout --track origin/main -b "$@"
elif git rev-parse --quiet --verify origin/master > /dev/null; then
	exec git checkout --track origin/master -b "$@"
fi

exec git checkout --track @{upstream} -b "$@"