#yyds干货盘点#Git学习-分支在实际开发流程中的应用
Posted 汤圆学Java
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#Git学习-分支在实际开发流程中的应用相关的知识,希望对你有一定的参考价值。
前言
前面我们学过了分支的创建、合并等操作,也了解了合并冲突的解决办法;
本篇我们就从实际开发的场景来看下,分支的用法。
目录
- 长期分支
- 短期分支
正文
1. 长期分支
有的分支,会贯穿于整个开发周期,这时我们就可以称这些分支为长期分支;
比如我们在实际开发时,都会有一个默认的master分支,用来指向稳定的代码;
而其他的分支比如dev开发分支,用来指向不稳定的或者待测试的代码;
当dev分支的代码通过测试时,我们就可以将其合并到master分支进行发布;
所以主分支master一般都是在开发分支dev的后面;
像这里的master主分支和dev开发分支,就属于长期分支;
这里我们截取网上的一个图来看下:
- 这里的初始版本只有一个master分支
jalon@bogon git-basic % git branch
* master
- 然后创建一个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.
- 然后继续在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 Flow工作流程非常详细的使用说明
#yyds干货盘点# Git 报错:unable to update local ref