[PATCH] git-branch: avoid getting confused by empty or nonexisting branches.
authorJunio C Hamano <junkio@cox.net>
Sat, 23 Jul 2005 02:08:47 +0000 (19:08 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 23 Jul 2005 03:34:16 +0000 (20:34 -0700)
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>
git-branch-script

index ade0abf06987bdb78ede571de7afe927486a2c69..041ca515ae700252ca03ea928b544be6bcdeab9c 100755 (executable)
@@ -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"