Git Best Practice All In One

git workflow

本地开发环境:

开发人员自测的,可以是自己本地部署的静态服务器,当然也可类似是运行 npm server类似的环境,本地环境运行的代码可以是任何分支的

dev开发环境:

这个环境是用开发分支dev产出的代码来部署的,唯一的公用的

测试&预发布环境:

这个环境是用开发分支release产出的代码来部署的,唯一的公用的

线上生产环境:

这个环境是用开发分支master产出的代码来部署的,唯一的公用的

git 分支模型

  1. 所有的分支都是基于master分支检出

master :保护分支,对应的就是生产环境的分支

release:保护分支,所有开发完成的分支会申请合并到release分支,提供给测试人员测试

feature--名字拼音缩写:功能分支,具体功能开发,( 名字拼音缩写 ,方便定位某个开发人员,快速解决冲突问题,feature-fe-monitor-xgqfrms 或 feature/fe-monitor-xgqfrms)

dev:开发分支 & 脏分支( 不要 merge 到 feature 分支),对应的是大家共用的开发环境,上面的代码会部署到一个公共的开发环境,供开发人员做自测,应付一些日常、非日常的调试

hotfix-
:bug紧急修复分支,可以直接合并到master,

(假如release合并了几个feature分支,正在测试的情况下,发现需要紧急修复的buf,紧急修复测试完毕后,可以直接合并到master,如果合并到release,在由release合并到master,那些正在测试的功能或者还不准备上线的功能就会跟着直接上线了)

  1. 工作流程

接到需求文档,做评审后分配个每个人或小组的功能开发,相关人员从master 检出 feature 功能分支

开发的时候除了会在本地测试,有需要还会合并到 dev分支,在公共的开发环境去自己做测试

因为在开发功能的期间,可能有 hotfix完成合并到master,合并代码的时候习惯 merge一下master,防止冲突等

自测完成之后,申请合并到 release,合并成功后部署到测试环境后通知测试人员做测试

测试通过后,release 申请合并到master,准备上线

如果测试不通过,在功能分支修改后重新 merge

上线成功稳定后删除对应的功能分支,dev 合并最新的master分支

一线大厂 git 分支流程

https://www.infoq.cn/article/EaC4c6yiJrzZ_Gtaf9Ne

https://zhuanlan.zhihu.com/p/45157955

http://yr87.cn/jxadd/article_detail/16393

https://biolxy.github.io/2018/12/04/Git-develop-SOAP/

refs

https://segmentfault.com/a/1190000024453209

music



xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


Git Best Practice All In One的更多相关文章

  1. git best practice

    1. https://www.atlassian.com/git/tutorials/learn-git-with-bitbucket-cloud (atlassian家的git) 2. https: ...

  2. [git] Git in Practice

    Work flow with git and github Work with Remotes Check the current status git status Check the latest ...

  3. Git 软件开发过程

    一.关于Git与Subversion的区别 二.目前我们用Subversion是怎么执行软件过程的 三.优势与缺点 架构 * Git:分布式,所有的teammates本地可以clone一份独立完整的仓 ...

  4. git submodule 使用

    这个是备忘录,原网页: https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 http://cncc.bingj.c ...

  5. linux下git的安装和使用(转)

    转自:http://www.cnblogs.com/sunada2005/archive/2013/06/06/3121098.html 最近在使用github,感觉不错.在windows下,可使用g ...

  6. Git错误non-fast-forward

    Git错误non-fast-forward后的冲突解决 [日期:2012-04-21] 来源:Linux社区  作者:chain2012 [字体:大 中 小]   当要push代码到git时,出现提示 ...

  7. Git - Tutorial [Lars Vogel]

    From: http://www.vogella.com/tutorials/Git/article.html Git - Tutorial Lars Vogel Version 5.6 Copyri ...

  8. Git - Tutorial官方【转】

    转自:http://www.vogella.com/tutorials/Git/article.html#git_rename_branch Lars Vogel Version 5.8 Copyri ...

  9. git版本库底层命令

    当我们在使用git的时候,有时候需要知道当前文件夹相对于工作目录根目录的相对路径等等,那么我们可以使用 git rev-parse 添加一个参数就可以实现,如: 显示当前仓库版本库 .git 目录所在 ...

随机推荐

  1. vue-cli快速创建项目,可视化创建

    之前学习了交互式创建,发现过程无聊,而且不方便,后面又学习了图形可视化创建,下面进行分享 1.打开cmd 2.输入vue ui,输入后会出现如下 C:\Users\12235>vue ui St ...

  2. Slack 的想法很好啊,很有创新,牛。

    [原]https://www.leiphone.com/news/201411/aXHUpe4ZFI2sSwpb.html 由于以往一些用于办公的应用反响平平,因此对迅速崛起的办公交流应用Slack, ...

  3. Uber如何解决2000多个微服务带来的复杂性问题?

    Uber如何解决2000多个微服务带来的复杂性问题? Adam Gluck 架构头条 2020-10-29 https://mp.weixin.qq.com/s/N7fVDZVm8uC9wVvd9DQ ...

  4. Jaspersoft Studio报表设计

    1      开发工具 1.1  软件名称 名称:TIBCO Jaspersoft Studio 版本:6.0或以上,建议6.2.1 1.2  软件安装 免安装软件包,拷贝即可使用,建议放在D:盘或其 ...

  5. QTREE----树剖

    题目内容: ---------------------------------------------------- Query on a tree Time Limit: 851MS   Memor ...

  6. 三:SpringBoot-配置系统全局异常映射处理

    三:SpringBoot-配置系统全局异常映射处理 1.异常分类 1.1 业务异常 1.2 系统异常 2.自定义异常处理 2.1 自定义业务异常类 2.2 自定义异常描述对象 2.3 统一异常处理格式 ...

  7. ubuntu下scala下载+集成IDEA开发环境

    环境须知: ubuntu 16.04 scala 2.11.0 jdk 1.8.0 Idea 2016.3 JDK环境安装 (1)安装jdk, 注意scala很好的支持jdk 1.8 的jvm 编译环 ...

  8. dedecms织梦搜索页错乱的解决方法

    在使用DEDE程序所架设的网站时,使用搜索结果页展示的问题上,由于font样式飘红问题,导致页面错乱,今天来解决这个问题. 织梦程序的搜索结果原理很简单,利用font加入颜色样式赋予搜索结果,所以显示 ...

  9. Elastic Stack简介和Elasticsearch--先搞清楚概念第二篇

    ELK 是三款软件的简称:分别是Elasticsearch. Logstash.Kibana组成 .在发展的过程中,又有新成员Beats等的加入,所以就形成了Elastic Stack.ELK 是旧的 ...

  10. linux 一分钟搭建zookeeper linux 单机版(亲测可用)

    wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gzt ...