Git分支

Git分支


在 Git 中,分支(Branch)是用于并行开发的一个重要特性。它允许你在不影响主线(通常是 mainmaster 分支)的情况下,进行独立的开发工作。

1. Git分支命令


1.1 查看本地分支

  • 命令:git branch

1.2 创建本地分支

  • 命令:git branch 分支名

1.3 *切换分支(checkout)

  • 命令:git checkout 分支名

我们还可以直接切换到一个不存在的分支(创建并切换)

  • 命令:git checkout -b 分支名

1.4 *合并分支(merge)

一个分支(合并分支)上的提交可以合并到另一个分支(目标分支

  • 需要先切换到目标分支:git checkout 目标分支名
  • 合并命令:git merge 合并分支名

1.5 删除分支

不能删除当前分支,只能删除其他分支

  • git branch -d 分支名 删除分支时,需要做各种检查

  • git branch -D 分支名 不做任何检查,强制删除

    删除分支

1.6 解决冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:

  1. 处理文件中冲突的地方
  2. 将解决完冲突的文件加入暂存区(add)
  3. 提交到仓库(commit)

冲突部分的内容处理如下所示:

冲突处理.png

2. 开发中分支使用原则与流程

几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着可以把我们的工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线。

在开发中,一般有如下分支使用原则与流程:

  • master (生产) 分支
    线上分支,主分支,中小规模项目作为线上运行的应用对应的分支。
  • develop(开发)分支
    是从master创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线要求,都可以在此版本进行开发,阶段开发完成后,需要是合并到master分支,准备上线。
  • feature/xxxx分支
    从develop创建的分支,一般是同期并行开发,但不同期上线时创建的分支,分支上的研发任务完成后合并到develop分支。
  • hotfix/xxxx分支
    从master派生的分支,一般作为线上bug修复使用,修复完成后需要合并到master、test、develop分支。
  • 还有一些其他分支,例如test分支(用于代码测试)、pre分支(预上线分支)等等。
    分支