团队作业(二)

基础技能

一、git协作方式

1. git的工作流

目前项目使用的是git来进行项目管理(需要熟悉git的工作流)、git的团队协作流程

1.1 分支管理

目前项目参考的是这个模型

团队协作

  1. master:受保护,负责分支的版本控制,3.0.0、3.0.1、3.1.0、3.2.0、...
  2. release:目前还没有,主要用于线上环境,分出一个release的分支(介于dev与master中间),作为临时处理
  3. dev:开发分支,也是团队协作中主要会用到的分支,代码提交到dev分支,负责代码提交、拉取、审查、合并...
  4. feature:成员分支,每个开发者会建立一个feature,类似feature/xxx,作为个人开发的分支,用于个人本地代码的提交、拉取仓库代码、合并本地代码,所以新加成员时,需要创建一个个人的feature分支

  5. 项目分支

1.2 代码提交

个人git的代码提交

  1. 首先,需要先将dev的代码merge dev到feature
  2. 再通过feature进行commit
  3. 并push本地代码到仓库
  4. 在gitlab的管理页面进行代码合并的申请
  5. 等待团队成员review代码,进行合并

提交合并请求

1.3 代码审查

审查方式有两种:

  1. 如果团队控制在6人以内,可以由2个能力比较强的、业务熟悉的来统一作为代码reviewer;
  2. 如果团队人员比较多,可以任务级别的两两互相reviewer

1.4 代码合并

具有主要开发者权限,可以进行最后的合并操作,feature的分支合并到dev分支,dev分支合并到release或master分支;
建议:需要添加标签、里程碑!方便后面的成员管理。

2. gitlab-issue与wiki

进行团队协作(可用jira代替)

2.1 执行计划

issue使用
issue的作用表现在方方面面,它可以是用于记录一些公告、制定OKR、项目讨论的内容、发布任务(日常开发、探究性、文档、部署)、重要的技术积累、一些想法。
目前团队中主要用于:

  1. OKR-制定周目标
  2. 发布任务(由团队成员认领)
  3. 发布公告-记录一些关键的技术点

2.2. 里程碑

这也是OKR的一部分,用于标记目前代码提交、任务发布过程中所属阶段,确定目前处于什么阶段

2.3. 标签/标记

这个功能很牛,如果运用得好,就是神器。
目前团队中主要用于:

  1. 标记优先级(优先级1、2、3)
  2. 标记参与的成员(可以作为每个月查看成员认领了什么任务,完成了什么)
  3. 标记任务状态(正在做、待认领、已完成,方便认领任务)
  4. 标记任务类型(文档、部署、公告)

采访学长

项目开始前要做什么?

好好做需求分析,不能流于表面,要去深层理解用户的真实需求。
提前做好项目时间规划,可以先定下一些简单的小目标,不一定要做出完整的框架,可以根据实现过程慢慢完善。
查找资料,在心中对项目有一个大致想法。
项目实现过程中需要注意什么?

组长要起到监督和督促作用,定期布置任务,督促完成任务,任务要定时定量完成。组员也不能完全依赖组长,自觉很重要。
团队要多讨论,多交流,集思广益,不是说个人的任务就一定要个人完成。
每一阶段任务所有组员都要齐心协力,组内统一意见,如果有不同的想法就得票选出最优解。

需求分析

参考蓝墨云班课中资源,撰写本项目的《需求规格说明书》,并提交至码云。

在随笔中附《需求规格说明书》的Git链接(markdown文件及pdf文件,tip:pdf可由markdown转pdf工具得到)。
https://gitee.com/cfqlovem-521/eDocTrans/blob/master/需求规格说明书.pdf

posted @ 2021-10-17 22:44  龙卷疯  阅读(66)  评论(0编辑  收藏  举报