“Git实践指南:深入探索开发测试上线、分支管理与标签“

文章目录

  • 引言
  • 一、Git的分支的使用
    • 1.分支
    • 2.标签
    • 3.分支与标签的关系
    • 4. 分支在实际中的作用
    • 5. 四个环境以及各自的功能特点
    • 6. 分支策略
    • 分支应用场景
  • 二、Git的标签
    • 3.1 标签的基本使用
    • 3.3 标签的共享与推送
  • 总结

“Git实践指南:深入探索开发测试上线、分支管理与标签“_第1张图片

引言

在现代软件开发中,版本控制是一个关键的环节,而Git作为最流行的分布式版本控制系统,为团队协作、代码管理和发布提供了强大的工具和功能。本篇博客将深入探讨Git的使用,重点讲解开发测试上线流程、分支管理和标签的应用技巧,帮助读者更深入地理解和应用Git,提高开发效率和代码质量。

一、Git的分支的使用

“Git实践指南:深入探索开发测试上线、分支管理与标签“_第2张图片

1.分支

dev/test/pre/pro(即master)
dev-开发环境–Windows(自己的电脑)
test-测试环境–Windows/Linux
pre-灰度环境
pro-正式环境

2.标签

Tag格式: 主版本号.次版本号.修订号-类型标签,其中类型标签可为:alpha、beta、rc、r。
Tag示例:1.0.0-alpha、1.0.0-beta、1.0.0-rc、1.0.0-r

注1:有的公司在版本命名时,前面加v,“-”替换成“_”,更加详细一点还可以在修订号后面添加发布日期
v1.0.0.191220_r,这都是可以的

3.分支与标签的关系

dev–>alpha
test–>beta
pre–>rc
pro–>r

4. 分支在实际中的作用

假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,
不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。

怎么办?
现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,
而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作

5. 四个环境以及各自的功能特点

四个环境分别是:dev、test、pre、pro(master),中文名字:开发环境、测试环境、灰度环境、生产环境

dev环境:开发环境,外部用户无法访问,开发人员使用,版本变动很大。
test环境:测试环境,外部用户无法访问,专门给测试人员使用的,版本相对稳定
pre环境:灰度环境,外部用户可以访问,但是服务器配置相对低,其它和生产一样。
pro(master)环境:生产环境,面向外部用户的环境,连接上互联网即可访问的正式环境。

6. 分支策略

在实际开发中,我们应该按照几个基本原则进行分支管理:
1.首先,pro分支(即master)应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;

2.那在哪干活呢?干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,
再把dev分支合并到master上,在master分支发布1.0版本

3.修复bug时,我们会通过创建新的bug分支(即test)进行修复,然后合并,最后删除;

4.当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场

2.2 高级分支策略与开发流程
在实际项目中,我们经常需要使用不同的分支策略来管理开发流程。本节将深入讨论主分支保护与长期分支管理、功能分支与短期任务开发以及临时分支与bug修复的最佳实践。

2.3 分支合并技巧与最佳实践
分支合并是Git中常见的操作,但也容易引发冲突和历史混乱。本节将介绍使用rebase进行线性历史和干净的合并、利用补丁和cherry-pick选择性合并,以及小组协作中的分支推送和拉取策略。

2.4 分支策略与工作流程案例分析
不同的团队和项目可能适用不同的分支策略和工作流程。在本节中,我们将分析GitFlow工作流程和GitHub Flow在敏捷开发中的应用,并探讨如何自定义分支策略以适应团队的需求和项目的特点。

分支应用场景

  1. 准备新建一个空文件夹存放
  2. 新建一个私有的仓库,并且初始化完成,复制好ssh克隆网址
  3. 进入目标文件目录,并且查看分支
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第3张图片
    master为主分支
  4. 增加分支(git branch dev)并且切换dev分支 git checkout dev 删除dev要在master分支中进行,不能在dev中
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第4张图片
    然后 在dev中创建十个文件准备测试
  5. 搭建test分支
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第5张图片
  6. dev 提交六个
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第6张图片
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第7张图片
    此时还有5个未暂存
  7. 切换测试分支
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第8张图片
    这些都是未提交的
    然后test合并dev的文件
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第9张图片
    此时master能看到的只有5个

然后test测试分支把不合格的文件删掉
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第10张图片
删掉之后git status就会看到
然后图形化,提交
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第11张图片
然后切换到master
再合并test
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第12张图片
我这里之前的不合格没提交,所以保留了下来
这个时候本地分支就搞好了,接下来搞远程分支
切换到dev分支,再进行远程操作,输入(git push origin dev回车)
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第13张图片
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第14张图片
然后是test,master
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第15张图片
接下来为用到的代码作解释

  • git branch 查看分支
  • git branch dev 创建分支
  • git checkout dev 切换到该分支
  • git checkout -b dev 创建切换到该分支
  • git branch -d dev 删除分支
  • git push origin dev 推送
    其中dev 是分支名,我把分支名都用dev代替
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第16张图片

二、Git的标签

3.1 标签的基本使用

增删查的使用
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第17张图片

3.2 语义化版本控制与标签管理
在软件开发中,语义化版本号能够清晰地说明不同版本之间的差异和兼容性。本节将探讨如何使用语义化版本号规范项目的版本,并讲解如何根据版本号进行标签管理和发布。

3.3 标签的共享与推送

  • dev分支推送alpha标签
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第18张图片
  • master分支推送r标签
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第19张图片
    此刻就有两个标签了
    “Git实践指南:深入探索开发测试上线、分支管理与标签“_第20张图片

现在出现这厶一种情况,原有的分支修复了代码异常问题需要重新提交,可以这么做
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第21张图片
把这两个提交,然后在dev分支重新增加标签,并推送

“Git实践指南:深入探索开发测试上线、分支管理与标签“_第22张图片
此时有三个了
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第23张图片
然后再删除
先删除本地的,再删除远程的
“Git实践指南:深入探索开发测试上线、分支管理与标签“_第24张图片

“Git实践指南:深入探索开发测试上线、分支管理与标签“_第25张图片
好了,到这里就完成了

总结

通过本篇博客的深度讲解,我们详细探索了Git的高级使用技巧,包括开发测试上线流程、分支管理和标签的应用。希望读者能够从中获得实际可行的工具和方法,提升团队的协作效率、代码质量和发布过程的可靠性。请注意,以上只是每个知识点的概述,您可以根据需要进一步扩展和深入研究每个主题。祝愿您在Git实践中取得更好的成果!

你可能感兴趣的:(git)