12 使用Git分支合作开发

Posted 迂者-贺利坚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12 使用Git分支合作开发相关的知识,希望对你有一定的参考价值。

本节视频:

在初始化仓库后,Git创建了一个默认的分支master。前面我们所有的工作都在master分支上完成。
  在实际的工作中,一个分支不够用。在团队开发中,创建多个分支更是必要。
  本节学习Git中的分支,将理解分支的概念及作用,学会会管理本地仓库的分支,并能将分支推送到远程仓库,最终能理解利用分支工作的策略,并用于团队工作。

(1)理解分支概念


  上面是一个Git分支结构的示意图:主分支(master)用于发布项目确定的版本;dev分支支持日常的开发工作,阶段性地合并到主分支上;张、王等工程师个人的工作也分别从dev引出分支,在需要的时候再合并。
  结合如上场景,产生了主分支(master)、创建分支、合并分支等概念,请对照上图用自己的话说出。
  在合并分支时,由于不同分支可能会对同一文件发生修改,冲突由此而生。冲突是正常现象,发生了解决就好。通过良好的开发组织,如更加合理的分工、推送时间的安排、工作权限的设置等,可以降低冲突的频次。
  分支被应用于多人合作开发、生产环境bug修复、试验性更改、多版本发布等场合,是项目管理的重要手段。

(2)Git分支管理策略

在运用分支组织项目开发时,一般安排如下图所示的多种分支:

  • Master分支:用于版本发布,每一个节点都是可发布版本。
  • Develop分支:作为开发的主分支始终存在,开发人员应每天拉取远端develop分支,尽早解决冲突。
  • Release分支:从develop分支创建,作为发布新版本前的准备分支;该分支只进行bug修复和文档修改,待版本稳定后,将该分支合并到master和develop分支,并删除该分支;严禁其他开发分支直接合并到master分支。
  • Feature分支:从develop分支创建的功能开发分支,用于本地开发使用,开发周期不宜过长;当有功能分支完成,应尽早合并到develop分支,应尽早处理冲突;合并到develop分支后,应删除该分支。
  • Hotfix分支:生产环境紧急bug修复分支,从master分支创建,完成bug修改后,合并到master和develop分支,并删除该分支。

(3)分支操作命令

应用下面的命令完成对分支的操作:

  • 查看分支
    git branch
  • 创建分支
    git branch <branch-name>
  • 切换分支
    git checkout <branch-name>
    git switch <branch-name>
  • 推送至远程仓库
    git push --set-upstream origin <branch-name>(用于第1次推送)
    git push(日常推送当前分支)
  • 合并指定分支到当前分支
    git merge <branch-name>
  • 删除分支
    git branch -d <branch-name> #分支未提交时不能删除
    git branch -D <branch-name> #强行删除(慎用!)

<上一讲>  <教程目录>  <下一讲>

以上是关于12 使用Git分支合作开发的主要内容,如果未能解决你的问题,请参考以下文章

git团队合作 - branch分支的使用主分支合并冲突处理方案

git团队合作开发流程

多人合作使用git,推送代码和并分支

GitHub 系列之「团队合作利器 Branch」

贺老师新作:Git入门实践教程

贺老师新作:Git入门实践教程