刚做完一个项目并且艰难得上线,对整个项目流程和gitLab规范 有了一些心得,给新来的同学普及一下。

  最先产品会写一篇需求文档,咱们要先看需求文档对项目有一个大致了解,然后产品喊后端、ui、前端  一起在讨论-一下项目,对项目有一个明确的认知,如果讨论过程中 有咱们没有做过功能,咱们需要调研。 ui画完图 咱们先看图  想想一下项目的整个交互流程   感觉哪地方逻辑不对 可以和ui、产品一起商量,商量的时候记得叫上后端,别你们商量好了有改动  人家后端还不知道怎么回事那。 如果一些布局 你看着难受别扭,可以和ui商量 但是以ui为主,毕竟人家是 干这个的,还有刚来咱们公司 肯定会遇到没psd图  你没法量 但是还需要符合规范的情况,三种方式  你要求ui出psd图 、 还有就是 自己看《web端交互规范》和让ui 在图上标识距离像素。一般都是第三种,但是 由于咱们有组件库 通常情况下 都是不用测量距离。

  对项目有明确认知 就可以开始画类图,类关系用什么标识连接点开这个链接有详细说明 https://design-patterns.readthedocs.io/zh_CN/latest/read_uml.html  ,不会画 或者 类关系不明白的 可以问各自师傅,类图是重中之重  真正开始写代码的时候 是要跟根据类图来做的。mock在这个时候 也可以与后台制定了。

  然后ui图出完之后,咱们就可以开始画交互时序图了,交互时序图要体现出 用户的操作流程和交互效果,交互时序图画完要给ui看一下,哪地方的交互有问题 ui会和你说的。

  图画完让师傅或者组长检查一下,然后就可以开始预演了,预演就是 你拿着这两个图,给团队其他成员 去讲解,尤其是 交互时序图 需要和团队成员达成思想一致,才算预演成功。预演通过后,需要在gitLab上自己所在项目拆分issue,

  

  当然项目中的第一个issue 是标题:开发预演 描述:如:考试项目v1.0里程碑,预演结果--包括交互时序图和组件的类图,评论里面 发送 交互时序图和类图,开发预演issue通过了,并且组长评论了就可以关闭开发预演issue了。

  创建某个issue时 需要在该issue下 评论预估时间如 /estimate 2h, h时小时、d是天数。

  完成issue时 需要评论实际时间 /spend 2h  如果实际时间超出预估时间,要评论超出时长原因。

  完成一个issue的流程  :

     创建issue 如上图----评论预估完成该issue时间----准备完成某issue更改标记、选择截至日期----代码完成时push到该issue的分支上-----在该issue上评论实际时间--如果超时在评论超时原因--

把对应issue的分支合并到dev
 

  我们开始开发功能是在dev上创建分支,功能分支 就是开发项目里面还没有的新功能的分支,以dev-feat开头。功能开发完之后确定没有问题,合并到dev,如果合并到dev之后发现有问题要修复,在dev分支上建bug修复分支,以dev-fix开头,修复完之后合并回dev,功能全部开发完毕。

  完成所有issue 准备提测,提测之前需要进行代码评审,创建代码评审issue 如果有被审查出来的问题 描述里面把每个问题都写上,每个问题再单独创建一个issue,如果没有问题,找这次评审的负责人 进行评论通过,然后将dev合并到release,由测试组同事完成合并。

  dev合并release之前 需要配置好webpack,向运维要你项目的测试地址(域名),向后端要后端的服务测试地址。

  合并到release 并且项目 能运行了,就算是提测成功,在测试期间 如果测试给你找到bug 他会创建issue 并把issue 指派给你,如果你发现是后端问题 你在和测试说 让他指派给后端,领到issue后评论issue预估时间、更改结束时间,完成后需要评论实际完成时间,分支名字根据下图来创建:

在测试环境发现的问题,在release分支上创建分支,以fix开头,修复完合并回release 指派给测试,测试合并后,然后关闭该issue。

  测试完毕后,测试会创建预上线通知,咱们前端会在预上线issue里面检查并勾选检查项,然后测试把relase合并到master指派给产品,产品合并后关闭上线通知issue,在线上如果找到bug 产品会创建RC里程碑,线上bug issue指向RC里程碑,在master分支上创建分支,以hotfix开头,修复完合并回master指派给运维,运维合并后,然后关闭该issue。

  项目线上没有问题后,master合并到dev,项目负责人自己提合并请求,自己完成合并,然后将dev合并到release ,测试组同事完成合并。最后会开项目总结会要记住 开会的时候总结的几点 ,最后会写项目总结 写到项目维基里。

gitLab操作规范和项目流程的更多相关文章

  1. iOS开发项目之一 [ 项目流程]

    项目流程 *人员配置 *客户端(iOS工程师,Android工程师) *前端 h5 *后台人员(php,java,net) *提供接口(请求地址.请求参数,请求方式,接口文档) *UI UE * 效果 ...

  2. ng机器学习视频笔记(十六) ——从图像处理谈机器学习项目流程

    ng机器学习视频笔记(十六) --从图像处理谈机器学习项目流程 (转载请附上本文链接--linhxx) 一.概述 这里简单讨论图像处理的机器学习过程,主要讨论的是机器学习的项目流程.采用的业务示例是O ...

  3. vue框架构建项目流程

    构建项目流程: 1.全局查询:node -v 2.全局初始化:npm install --global vue-cli 3.模块化工程:vue init webpack myapp--->y,n ...

  4. 在IDEA中构建Tomcat项目流程

    在IDEA中构建Web项目流程 打开你的IDEA,跟着我走! 第一步:新建项目 第二步:找到Artifacts 点击绿色的+号,如图所示,点一下 这一步很关键,目的是设置输出格式为war包,如果你的项 ...

  5. 【github&&git】5、使用Git拉取GitLab上的项目

    一.安装Git(windows版.其他平台参阅) 去Git的官网,下载安装包,安装时,一路默认 二.配置Git 2.1 在任意地方,创建一个文件夹,保证该文件夹的目录全部是英文 2.2 打开新建的文件 ...

  6. 【Gitlab】从Gitlab拉取项目+往Gitlab发布项目 【GitLab自定义端口】

    1>GIt需要提前安装在本地,本机,自己的电脑,开发环境电脑,IDEA所在的电脑 2>代码仓库:gitlab 3>开发工具:IDEA 4>内网搭建gitlab,访问url: h ...

  7. Atitit 项目管理 提升开发效率的项目流程方法模型 哑铃型  橄榄型 直板型

    Atitit 项目管理 提升开发效率的项目流程方法模型 哑铃型  橄榄型 直板型 项目主体三个部分 ui界面,中间层,数据库 按照不同的比重可以分为一下三个模型  哑铃型  橄榄型 直板型 哑铃型 开 ...

  8. Vue 简单的总结四(项目流程,DIY脚手架、vue-cli的使用)

    项目流程 1.下载 cdn 2.引包 vue-router依赖vue vue-router.js 3.如果是模块化机制 Vue.use(vue-router) 4.创建示例 let Home = {/ ...

  9. django搭建简单开发项目流程(一)

    1 搭建环境 sudo apt-get install python3-pip 安装pip3 sudo pip3 install virtualenv 安装虚拟环境 virtualenv -p pyt ...

随机推荐

  1. objectarx之遍历当前模型空间中的所有实体,并对每个实体进行炸开

    //炸开void BomEntity(){ AcDbBlockTable *pBlkTbl; acdbHostApplicationServices()->workingDatabase()-& ...

  2. 洛谷2501 BZOJ1801中国象棋题解

    题目链接 BZ链接 其实dp只要把状态想好后转移就很好写了(flag*1) f[i][j][k]表示到了第i行,有j列放了一个跑,有k列放了两个跑的方案总数 然后大力讨论,转移即可 # include ...

  3. Java注解初步了解 2016-07-24 22:20 240人阅读 评论(21) 收藏

    Java注解又称Java标注,是Java语言5.0版本开始支持加入源代码的特殊语法元数据. Java语言中的类.方法.变量.参数和包等都可以被标注.Java标注和Javadoc不同,标注有自反性.在编 ...

  4. BZOJ 3884 上帝与集合的正确用法题解

    一道智慧题 其实解这题需要用到扩展欧拉定理, 有了上面的公式,我们不难看出此题的解法. 设b为2^2^2^2^2.....显然,b要比φ(p)要大,所以可以直接套公式 modp时的答案 ans(p)= ...

  5. [***]沙雕低错集(算起来因为低错挂掉的分快够我AK三场了……)

    由于沙雕错太多了所以不想写了,看着就难受…… 各种沙雕错(自从上次考试开始各种犯沙雕低错……): !!!sort是不稳定的排序,如果排序结构题只按其中一个关键字排序,那么在关键字相等时,排序多次的结果 ...

  6. UIView 判断是否visible

    if(self.view == [(MyAppDelegate *)[[UIApplication sharedApplication] delegate].window.subviews objec ...

  7. UVa 10599【lis dp,记忆化搜索】

    UVa 10599 题意: 给出r*c的网格,其中有些格子里面有垃圾,机器人从左上角移动到右下角,只能向右或向下移动.问机器人能清扫最多多少个含有垃圾的格子,有多少中方案,输出其中一种方案的格子编号. ...

  8. HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.register_jsp

    你搜一下你的页面中是不是有<!---->的注释 去掉就好了 改成jsp的注释 1).JSP页面中的HTML注释 JSP页面中的HTML注释使用“<!—”和“-->”创建,它的具 ...

  9. jenkins集成错误 标签: 发布 2016-01-10 20:45 747人阅读 评论(21) 收藏

    进入ITOO的项目以后,终于要将自己负责的模块在jenkins上面集成发布了.首先自己按照文档要求一步一步的将配置完成,然后构建,不错所料出错了,经过修改,终于构建成功!构建成功以后就没再管了,结果第 ...

  10. POJ-2502_Subway

    Subway Time Limit: 1000MS Memory Limit: 65536K Description You have just moved from a quiet Waterloo ...