每一种版本控制系统都以某种形式支持分支,使用分支就可以从开发主线上分离开来,在不影响主线的同时继续工作。 Git 的分支管理包括:查看分支、创建分支、切换分支、删除分支以及合并分支等命令。
查看分支的命令:
git branch
git branch 会列出本地的所有分支。
例如:$ git branch develop * master
以上结果显示本地共有两个分支,分别为 master 和 develop 分支,其中前面有 ”*“ 的 master 分支为当前分支。
当你执行 git init 初始化仓库的时候,默认情况下 Git 就会为你创建 master 分支。
创建分支的命令:
git branch (branchname)例如:
$ git branch hotfix
以上命令会创建一个 hotfix 分支。
使用创建分支命令后,当前分支不会自动切换到新创建的分支。
git checkout (branchname)例如:
$ git checkout hotfix Switched to branch 'hotfix'
运行命令后,当前分支切换到了 hotfix 分支。
删除分支命令:
git branch -d (branchname)
例如:我们要删除 hotfix 分支:
$ git branch develop hotfix * master $ git branch -d hotfix Deleted branch hotfix (was 3a1ae0e). $ git branch develop * master
hotfix 分支已经被删除。
某分支修改完成后,一般会将它合并回到主分支。
使用以下命令将其它分支合并到当前分支中:
git merge (branchname)
我们在 hotfix 分支上创建一个了文件 test.txt,并将文件提交。
# 查看所有分支,当前分支为 hotfix $ git branch master * hotfix $ ls test.txt # 当前分支切换到 master 分支 $ git checkout master Switched to branch 'master' # 合并分支 $ git merge hotfix Merge made by the 'recursive' strategy. test.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test.txt # 合并后,master 分支下多了 test.txt 文件。 $ ls test.txt
合并完后就可以删除 hotfix 分支:
$ git branch -d hotfix Deleted branch hotfix (was c1501a2).