[PATCH] git-branch: avoid getting confused by empty or nonexisting branches.

When not specifying the start point explicitly, we ended up
emitting ^0 in addition to the default HEAD.  Be careful to see
if we have "$2" before finding out which commit to base the new
branch on.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano 2005-07-22 19:08:47 -07:00 committed by Linus Torvalds
parent 5bb2c65aba
commit a38e727925

View file

@ -3,7 +3,13 @@
. git-sh-setup-script || die "Not a git archive"
branchname="$1"
rev=$(git-rev-parse --verify --default HEAD "$2"^0) || exit
case "$2" in
'')
head=HEAD ;;
*)
head="$2^0" ;;
esac
rev=$(git-rev-parse --revs-only --verify "$head") || exit
[ -z "$branchname" ] && die "git branch: I want a branch name"
[ -e "$GIT_DIR/refs/heads/$branchname" ] && die "$branchname already exists"