git checkout -b branchname
新建分支, 相当于
git branch branchname
git checkout branchname
注意,当本地代码有修改时,git避免检出的分支和本地有冲突会组织切换分支操作,所以切换分支最好是一个干净的工作区。
有两种绕过这个问题的方法 stashing和amending。
git branch -d branchname
删除分支
git branch -b testbranching origin/testbranching
创建本地分支 和远程同步的分支。
git merge branchname
合并分支,把branchname的分支合并到当前分支上。
请注意,合并时出现了 “Fast forward”(快进)提示。由于当前 master 分支所在的 commit 是要并入的 hotfix 分支的直接上游,Git 只需把指针直接右移。换句话说,如果 顺着一个分支走下去可以到达另一个分支,那么 Git 在合并两者时,只会简单地把指针前 移,因为没有什么分歧需要解决,所以这个过程叫做快进(Fast forward)。
合并分支有可能会有冲突 ,打开冲突的文件,可以看到 ======= 隔开的上半部分是 HEAD(即 master 分支,在运行 merge 命令时 检出的分支)中的内容,下半部分是在 本地分支中的内容。
git mertgetool
它会调用一个可视化的合并工具并引导你解 决所有冲突.
git branch
可以显示当前分支的清单。
git branch -v
看各个分支最后一次 commit 信息
git branch -merge
可以查看那些分支已经合并到了当前的分支
git branch --no-merged
查看尚未合并的分支