分支是 Git 最重要的概念之一,也是最常用的操作之一。几乎所有 Git 操作流程都离不开分支。 通常来说当我们要新做一个功能,或者改一个bug的时候我们都会从主分支(main/master)创建一个新的分支,并且切换到这个分支。 然后当我们做完这个功能的时候,我们会把这个分支合并到测试分支(test/accp),如果QA测试通过, 我们可以把这个分支合并到Production的分支上(main/master)。 (各个团队都有不太一样的git flow) 工作期间如果有其它优先级更高的工作来了,你也可以新建一个分支来处理它。
git branch
命令可以列出本地的所有分支。
$ git branch
创建一个名为malema
的新分支,但是依然停留在当前分支。
$ git branch malema
在远程主机origin
上创建一个malema
的分支,并与本地的同名分支建立追踪关系。
$ git push -u origin malema
将当前分支改名为malema
。
$ git branch -m malema
删除malema
分支,前提是该分支没有未合并的变动。
$ git branch -d malema
强制删除malema
分支,不管有没有未合并变化。
$ git branch -D malema
切换到malema
分支,当前的工作区会变为malema
分支的内容。
$ git checkout malema
基于malema
分支创建一个新的NewBranch
分支,新的NewBranch
分支将成为当前的工作区。
$ git checkout -b NewBranch malema