|
|
|
|
@ -25,13 +25,30 @@ function work_in_progress() { |
|
|
|
|
fi |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# Check if main exists and use instead of master |
|
|
|
|
# Get the default 'main' branch |
|
|
|
|
# Marc(2020-07-11): I hope to be able to remove this someday |
|
|
|
|
function git_main_branch() { |
|
|
|
|
if [[ -n "$(git branch --list master)" ]]; then |
|
|
|
|
echo master |
|
|
|
|
else |
|
|
|
|
echo main |
|
|
|
|
# Get default branch from the origin remote |
|
|
|
|
local branch |
|
|
|
|
branch="${$(command git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null)#refs/remotes/origin/}" |
|
|
|
|
|
|
|
|
|
if [[ -n "$branch" ]]; then |
|
|
|
|
echo "$branch" |
|
|
|
|
return |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Look up list of local branches and return the first one that exists |
|
|
|
|
local -a branches |
|
|
|
|
branches=(${(@f)"$(command git for-each-ref --format='%(refname:short)' refs/heads 2>/dev/null)"}) |
|
|
|
|
for branch in master main; do |
|
|
|
|
if (( ${branches[(Ie)$branch]} )); then |
|
|
|
|
echo "$branch" |
|
|
|
|
return |
|
|
|
|
fi |
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
echo master |
|
|
|
|
return 1 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# |
|
|
|
|
|