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. Linux中LPC、RPC、IPC的区别

    其实这玩意儿就是纸老虎,将英文缩写翻译为中文就明白一半了. IPC:(Inter Process Communication )跨进程通信 这个概念泛指进程之间任何形式的通信行为,是个可以拿来到处套的 ...

  2. 脑裂 CAP PAXOS 单元化 网络分区 最终一致性 BASE

    阿里技术专家甘盘:浅谈双十一背后的支付宝LDC架构和其CAP分析 https://mp.weixin.qq.com/s/Cnzz5riMc9RH19zdjToyDg 汤波(甘盘) 技术琐话 2020- ...

  3. spring 之7种重要设计模式

    Spring中涉及的设计模式总结 1.简单工厂(非23种设计模式中的一种) 实现方式: BeanFactory.Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获 ...

  4. UML 博客学习 后续继续完善

    http://blog.csdn.net/monkey_d_meng/article/details/6005764  http://blog.csdn.net/badobad/article/det ...

  5. based on Greenlets (via Eventlet and Gevent) fork 孙子worker 比较 gevent不是异步 协程原理 占位符 placeholder (Future, Promise, Deferred) 循环引擎 greenlet 没有显式调度的微线程,换言之 协程

    gevent GitHub - gevent/gevent: Coroutine-based concurrency library for Python https://github.com/gev ...

  6. ShowDoc,APIDoc,可道云API,语雀-适合IT企业的文档工具

    ShowDoc,APIDoc,可道云API,语雀-适合IT企业的文档工具 一.ShowDoc官方文档及说明 1.1 它可以用来做什么 1.2 它都有些什么功能 1.3 使用在线的ShowDoc 1.4 ...

  7. centos7 快速搭建redis集群环境

    本文主要是记录一下快速搭建redis集群环境的方式. 环境简介:centos 7  + redis-3.2.4 本次用两个服务6个节点来搭建:192.168.116.120  和  192.168.1 ...

  8. python模块----pymysql模块 (连接MySQL数据库)

    pymysql模块是专门用来连接mysql数据库的模块,是非标准库模块,需要pip下载 下载 pip install pymysql 查询 import pymysql # 打开数据库连接 db = ...

  9. The 2019 Asia Nanchang First Round Online Programming Contest C. Hello 2019(动态dp)

    题意:要找到一个字符串里面存在子序列9102 而不存在8102 输出最小修改次数 思路:对于单次询问 我们可以直接区间dpOn求出最小修改次数 但是对于多次询问 我在大部分题解看到的解释一般是用线段树 ...

  10. 前n项余数个数和

    一:O(n) 计算贡献:前n项中,能被i(1~n)整除的数的个数为(n/i)个,,也就是 i 给前n项中(n/i)个数做了余数 #include<iostream> using names ...