#yyds干货盘点#Git学习-分支在实际开发流程中的应用

Posted 汤圆学Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#Git学习-分支在实际开发流程中的应用相关的知识,希望对你有一定的参考价值。

前言

前面我们学过了分支的创建、合并等操作,也了解了合并冲突的解决办法;

本篇我们就从实际开发的场景来看下,分支的用法。

目录

  1. 长期分支
  2. 短期分支

正文

1. 长期分支

有的分支,会贯穿于整个开发周期,这时我们就可以称这些分支为长期分支;

比如我们在实际开发时,都会有一个默认的master分支,用来指向稳定的代码;

而其他的分支比如dev开发分支,用来指向不稳定的或者待测试的代码;

当dev分支的代码通过测试时,我们就可以将其合并到master分支进行发布;

所以主分支master一般都是在开发分支dev的后面;

像这里的master主分支和dev开发分支,就属于长期分支;

这里我们截取网上的一个图来看下:

  1. 这里的初始版本只有一个master分支
jalon@bogon git-basic % git branch
* master
  1. 然后创建一个dev分支进行开发,等到验收通过,就合并到master主分支,此时有一个发布的版本
jalon@bogon git-basic % git branch dev
jalon@bogon git-basic % vim a.txt 
jalon@bogon git-basic % git add a.txt 
jalon@bogon git-basic % git commit -m "update a.txt"
[master edb6224] update a.txt
 1 file changed, 1 insertion(+), 1 deletion(-)
jalon@bogon git-basic % git switch master
Switched to branch master
jalon@bogon git-basic % git merge dev 
Merge made by the recursive strategy.
  1. 然后继续在dev开发,等到验收通过,再合并到master主分支,此时就有了两个发布的版本

2. 短期分支

相对的,短期分支就是用来解决特定的某个问题而建立的分支,这种分支不会长期存在于开发周期中;

短期分支又可以分为多种:

  • 功能分支
  • 修复分支

功能分支

比如现在我们要给管理后台新增加一个 个人信息的界面,那么我们就可以创建一个feature分支,然后在这个分支上进行开发;

等到开发完成,再合并到dev开发分支;

大概的流程如下所示:

修复分支:

该分支主要用来修复bug,修复完成后,该分支会被删除;

比如现在管理系统的线上环境有一个bug,急需修复;

这时我们就可以从master主分支创建一个修复分支,命名为hotfix v1.0这样的格式(1.0表示产品的版本号),然后在hotfix v1.0分支进行修复;

等到修复完成,就把代码合并到master分支和dev分支;

jalon@bogon git-basic % git branch hotfix-v1.0
jalon@bogon git-basic % git switch hotfix-v1.0
Switched to branch hotfix-v1.0
jalon@bogon git-basic % vim a.txt
jalon@bogon git-basic % git commit -a -m "fixbug-v1.0"
[hotfix-v1.0 e419537] fixbug-v1.0
 1 file changed, 1 insertion(+)
jalon@bogon git-basic % git switch master
Switched to branch master
jalon@bogon git-basic % git merge hotfix-v1.0
Updating d2815b8..e419537
Fast-forward
 a.txt | 1 +
 1 file changed, 1 insertion(+)
jalon@bogon git-basic % git switch dev
Switched to branch dev
jalon@bogon git-basic % git merge hotfix-v1.0
Updating 9d460f3..e419537
Fast-forward
 a.txt | 1 +
 1 file changed, 1 insertion(+)

合并完成后,查看下提交记录:可以看到,修复记录已经合并到dev和master分支

jalon@bogon git-basic % git log
commit e4195378280f3f215652bb95c8104f83bbf50151 (HEAD -> dev, master, hotfix-v1.0)
Author: Jalon2015 <1121263265@qq.com>
Date:   Sat Jan 22 16:08:57 2022 +0800

    fixbug-v1.0

最后删除短期分支 hotfix-v1.0

jalon@bogon git-basic % git branch -d hotfix-v1.0
Deleted branch hotfix-v1.0 (was e419537).

总结

本篇主要介绍了分支在实际应用中的几种类型,如下所示:

长期分支 短期分支
master 主分支 feature 功能分支
dev 开发分支 hotfix 修复分支

以上是关于#yyds干货盘点#Git学习-分支在实际开发流程中的应用的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#Git实现分支管理

#yyds干货盘点#Git Flow工作流程非常详细的使用说明

#yyds干货盘点# 超全面Git知识总结!

#yyds干货盘点# Git 报错:unable to update local ref

#yyds干货盘点#Git学习-存档区,Git中的一个隐藏区

#yyds干货盘点#Git学习-如何修改已经提交的记录