Add "git branch" script

You can use it as

	git branch <branchname> [start-point]

and it creates a new branch of name <branchname>.  If a starting point
is specified, that will be where the branch is created, otherwise it
will be created at the current HEAD.

The sequence

	git branch xyz abc
	git checkout xyz

can also be written as

	git checkout -b xyz abc

as per the previous commit.
This commit is contained in:
Linus Torvalds 2005-07-11 21:30:23 -07:00
parent 91dcdfd3b5
commit 37f1a519f2
2 changed files with 13 additions and 1 deletions

View file

@ -34,7 +34,8 @@ SCRIPTS=git git-apply-patch-script git-merge-one-file-script git-prune-script \
git-log-script git-shortlog git-cvsimport-script git-diff-script \
git-reset-script git-add-script git-checkout-script git-clone-script \
gitk git-cherry git-rebase-script git-relink-script git-repack-script \
git-format-patch-script git-sh-setup-script git-push-script
git-format-patch-script git-sh-setup-script git-push-script \
git-branch-script
PROG= git-update-cache git-diff-files git-init-db git-write-tree \
git-read-tree git-commit-tree git-cat-file git-fsck-cache \

11
git-branch-script Executable file
View file

@ -0,0 +1,11 @@
#!/bin/sh
. git-sh-setup-script || die "Not a git archive"
branchname="$1"
rev=$(git-rev-parse --verify --default HEAD "$2"^0) || exit
[ -z "$branchname" ] && die "git branch: I want a branch name"
[ -e "$GIT_DIR/refs/heads/$branchname" ] && die "$branchname already exists"
echo $rev > "$GIT_DIR/refs/heads/$branchname"