创建操作
git branch
列出所有的分支, -r参数表示列出所有远程的分支
git branch branchname
建立一个名为的分支,使用当前版本作为这个新分支的版本
git branch
建立一个名为的分支, 使用指定的 作为新分支的版本,这个start-point可以是其他的分支名称或者tag名称。
删除操作
git branch -d
删除分支 ; 如果你要删除的分支并没有被merge到当前分支的话,将产生一个错误提示。
git branch -D
同-d,但是不管要删除的分支是否已经merge到当前分支,都会删除
切换操作
git checkout
切换当前分支到 , 更新 working directory 到 所对应的版本
git checkout -b
按照的版本建立一个新的分支,并checkout到这个新分支上。
git checkout -f
忽略差异部分,强制切换,例如: 修改branch test, 但是没有commit,这时如果切换到master,会提示错误。使用-f 则会丢弃test中的修改,强制切换,如果切回test分支,刚才的修改也没了
一个特殊符号 “HEAD” 总是指向当前分支. 实际上git使用一个在.git目录中叫 “HEAD”的文件来记录当前分支:
$ cat .git/HEAD
ref: refs/heads/master
示例:“master”分支是当初你执行git-clone时候,clone的一个远程repository的HEAD版本的一个copy.
$ git branch -r
origin/HEAD
origin/html
origin/maint
origin/man
origin/master
origin/next
origin/pu
origin/todo
列出所有远程版本,origin是用来表示你当初执行git-clone时候的repository,你不可以直接checkout远程repository,但是你可以根据远程repository生成一个本地repository:
$ git checkout -b my-todo-copy origin/todo