Git branch 分支管理

每一种版本控制系统都以某种形式支持分支,使用分支就可以从开发主线上分离开来,在不影响主线的同时继续工作。 Git 的分支管理包括:查看分支、创建分支、切换分支、删除分支以及合并分支等命令。

 

1. 查看分支

查看分支的命令:

git branch

git branch 会列出本地的所有分支。

例如:
$ git branch

develop
* master

以上结果显示本地共有两个分支,分别为 master 和 develop 分支,其中前面有 ”*“ 的 master 分支为当前分支。

当你执行 git init 初始化仓库的时候,默认情况下 Git 就会为你创建 master 分支。

 

2. 创建分支

创建分支的命令:

git branch (branchname)
例如:
$ git branch hotfix

以上命令会创建一个 hotfix 分支。

使用创建分支命令后,当前分支不会自动切换到新创建的分支。

 

3. 切换分支

git checkout (branchname)
例如:
$ git checkout hotfix

Switched to branch 'hotfix'

运行命令后,当前分支切换到了 hotfix 分支。

 

4. 删除分支

删除分支命令:

git branch -d (branchname)

例如:我们要删除 hotfix 分支:

$ git branch
  develop
  hotfix
* master

$ git branch -d hotfix
Deleted branch hotfix (was 3a1ae0e).

$ git branch
  develop
* master

hotfix 分支已经被删除。

 

5. 合并分支

某分支修改完成后,一般会将它合并回到主分支。

使用以下命令将其它分支合并到当前分支中:

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).