Git开发分支使用与管理规范

最稳定的代码放在 master 分支上(相当于 SVN 的 trunk 分支),我们不要直接在 master 分支上提交代码,只能在该分支上进行代码合并操作,例如将其它分支的代码合并到 master 分支上。

我们日常开发中的代码需要从 master 分支拉一条 develop 分支出来,该分支所有人都能访问,但一般情况下,我们也不会直接在该分支上提交代码,代码同样是从其它分支合并到 develop 分支上去。

当我们需要开发某个特性时,需要从 develop 分支拉出一条 feature 分支,例如 feature-1 与 feature-2,在这些分支上并行地开发具体特性。

当特性开发完毕后,我们决定需要发布某个版本了,此时需要从 develop 分支上拉出一条 release 分支,例如 release-1.0.0,并将需要发布的特性从相关 feature 分支一同合并到 release 分支上,随后将针对 release 分支部署测试环境,测试工程师在该分支上做功能测试,开发工程师在该分支上修改 bug。待测试工程师无法找到任何 bug 时,我们可将该 release 分支部署到预发环境,再次验证以后,均无任何 bug,此时可将 release 分支部署到生产环境。待上线完成后,将 release 分支上的代码同时合并到 develop 分支与 master 分支,并在 master 分支上打一个 tag,例如 v1.0.0。

当生产环境发现 bug 时,我们需要从对应的 tag 上(例如 v1.0.0)拉出一条 hotfix 分支(例如 hotfix-1.0.1),并在该分支上做 bug 修复。待 bug 完全修复后,需将 hotfix 分支上的代码同时合并到 develop 分支与 master 分支。

对于版本号我们也有要求,格式为:x.y.z,其中,x 用于有重大重构时才会升级,y 用于有新的特性发布时才会升级,z 用于修改了某个 bug 后才会升级。针对每个微服务,我们都需要严格按照以上开发模式来执行。

针对每个服务的开发工作,我们都需要严格按照以上开发规范来执行。

实际上,我们使用的开发规范是业界知名的 Git Flow,可通过以下博客地址了解 Git Flow 的详细过程:

http://nvie.com/posts/a-successful-git-branching-model/

摘自:https://blog.csdn.net/penker_zhao/article/details/51132514

原文地址:https://www.cnblogs.com/huangsheng/p/9189942.html

时间: 2024-08-04 08:16:59

Git开发分支使用与管理规范的相关文章

Git开发分支管理

远程仓库有master和dev分支的情况 1. 克隆代码 git clone https://somewhere.com/master-dev.git 2. 查看所有分支 git branch --all # 默认有了dev和master分支,所以会看到如下三个分支 # master[本地主分支] origin/master[远程主分支] origin/dev[远程开发分支] # 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步 # 但是origin

Git分支管理规范

关于Git的一些分支管理规范... 一.分支与角色说明 Git 分支类型 master 分支(主分支) 稳定版本 develop 分支(开发分支) 最新版本 release 分支(发布分支) 发布新版本 hotfix 分支(热修复分支) 修复线上Bug feature 分支(特性分支) 实现新特性 Gitlab 角色与项目角色对应关系 Owner(拥有者) Git 管理员 Master(管理员) 开发主管 Developer(开发者) 开发人员 Reporter(报告者) 测试人员 Guest(

团队项目的Git分支管理规范

原文地址: http://blog.jboost.cn/2019/06/17/git-branch.html 许多公司的开发团队都采用Git来做代码版本控制.如何有效地协同开发人员之间,以及开发.测试.上线各环节的工作,可能都有各自的流程与规范.本文分享的是作者一直沿用的团队项目Git分支管理规范,希望给有缘阅读的人以参考,如果有更好的实践,也欢迎探讨.交流. 分支管理 创建项目时(一般是服务型项目,工具型或辅助型项目可以简单一些),会针对不同环境创建三个常设分支: develop:开发环境的稳

git 分支管理规范

保证master分支永远处于可部署的状态.禁止自接提交代码到master分支 开发分支基于master分支创建,命名规范如下: 如果是功能需求,分支命名为feature/xxx,xxx要具有描述性 如果是线上bugfix,分支命名为hotfix/xxx,xxx要具有描述性 需要发布的时候基于master分支新拉一个release分支,并提交一个Merge Request申请将feature分支合并到release分支,指定一个人进行code review,没问题之后再进行合并,然后使用relea

GIT库代码管理规范

GIT库代码管理规范 一. 规范要求 1. 每个项目建立单独的GIT库.每个GIT库包括两条线,命名规则如下: 开发线(测试):项目名称_DEV 生产线(正式):项目名称 2. 每条线只允许增量不允许回滚: 3. 每个开发人员拉各自的分支开发,合并前先获取DEV代码,再提交合并: 4. 提交分支时注明:动作类型(新增.修改.删除)+改动明细: 5. 从开发线合并到生产线,由测试工程师负责拉代码/标注更新内容: 6. 由发布工程师将代码部署到服务器: 7. 禁止开发人员访问生产线,生产线不对开发人

Hybrid App开发git多分支代码版本管理实践

3.Setting Up and Configuring Backup and Recovery 这个单元讲述如何启动.与rman client如何互动,准备rman环境,实现备份和恢复策略 注意:尽管闪回数据库和安全还原点不是真的数据库备份,但是它们是数据保护策略一个重要部分.这些特性需要一些初始化设置,这些设置依赖于在备份策略中你怎么混合它们.Chapter 5-Data Protection with Restore Points andFlashback Database 提供了关于怎么

git 实现分支管理项目,是羡慕管理更高效;

利用git 的分支管理的能力实现更有章法的协同开发的模式: 其实在我们进行 git init 时就创建了 master 的主分支: 那现在我如何建立第二个分支呢? :git branch local 初始时分支的内容是完全和主分支是一样的,在分支中所有的操作都不影响主分支里的情况,你可以在其中做任何修改: 如何查看分支呢? :git branch local * master 星号是表示当前所在的分支:其实两个分支一模一样,只是大家都是把master当作主分支的: 如何切换分支呢? :git c

[git]git的分支管理

最近在折腾git,有感于git这个强大而好用的版本管理工具. 说说git分支管理的心得体会. 首先,要有个master主分支: Git主分支的名字,默认叫做Master.它是自动建立的,版本库初始化以后,默认就是在主分支在进行开发. Git 的 “master” 分支并不是一个特殊分支. 它就跟其它分支完全没有区别. 之所以几乎每一个仓库都有 master 分支,是因为 git init 命令默认创建它,并且大多数人都懒得去改动它. 日常开发中,要用到另外一个分支,就是Dev分支,主要用来开发,

Git 基本分支规范

基本代码分支应该分为两类,一类是主要分支,包括线上主分支 Master 和开发主分支Develop:另一类是辅助分支,包括测试分支 Release,线上紧急修复分支 Hotfix,以及功能开发分支 Feature.● Master 分支上的所有代码节点都必须处于可发布状态,且与线上运行的版本对应并且每一个节点都生成了 Tag 标注了发布的版本 ID.● Develop 分支上的代码节点代表了最新的功能开发进度,用于日常的功能开发,集成了多个新开发的功能以及正式提测前的 bug 修复代码.● Fe