大项目团队协作流程 | 青训营笔记

173 阅读3分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 4 天

根据在唠嗑群里摸鱼的观察,发现其实大多数同学都没有很多团队协作开发的经验。想起之前实习时接触的协作流程就很容易上手,在这里给大家分享一下。这是一种基于github分支的协作流程,但实际上对git操作并不熟悉的同学也很容易使用(比如一年前的我)。

这里以创建一个示例项目的仓库进行协作为例,演示一下整个流程。

创建项目

我的习惯一般是在github上面创建好项目后clone到本地,之后在建好的仓库里进行创建项目的操作(在实际的大项目中,我们也可以创建好项目后上传到github上)。

比如我现在创建了TestRepo的项目并clone下来,创建了一个项目(用index.html替代一下)。

image.png

git clone git@github.com:Horizon-srt/TestRepo.git
cd TestRepo
// blablabla……

image.png

提交到仓库中。

在协作的过程中,我们希望在主分支上的代码始终是能稳定运行没有bug的,但协作过程中很容易有同学将有bug或隐藏的缺陷的代码合并到主分支。此时,我们需要github提供的分支保护功能。

image.png

具体分支保护规则文档里写了很多,这里先只选择在分支合并前需提交pull request和代码审核。实际协作过程中这样应该就没什么问题了。

image.png

*写一个开发者文档(暂时叫这个名字)

项目创建者最好提前规定好所使用的环境、工具的版本,不怕麻烦的话给出不同系统对应的安装指令。刚接触前端时进入团队最折磨人的就是搭建本地开发环境……各种网络问题、版本问题层出不穷,解决这些问题还要经常麻烦前辈大佬们(哭)。

上面的问题在团队中可以共同协商也可以由一个人负责,展示形式也是怎么方便怎么弄就好。飞书的文档就相当不错,什么功能都有并且都很方便;掘金上发篇文章也很不错,对后来的新人会有很大启发;也可以直接在项目readme里写好,方便直接查看。

比如查看node版本:

node -v
//-> v16.19.0

image.png

提交代码

提交代码时新建分支,写好说明,包括具体哪个功能,什么位置……推送出去并提一个pull request,等待队内同学审核代码。这里建议使用commit工具,比如这个

安装

npm install -g commitizen
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc

使用

git cz

大体流程代码:

// 创建新分支
git checkout -b XXX

// 添加说明,可以替换
git cz

// 提交分支
git push origin XXX

分支命名可以有自己的规范,比如feat/xxx指新增功能、特性,fix/xxx代表bug修复。命名可以使用简写加"-"组合,总之让人(至少是团队)一眼看懂就好。

image.png

写到这里我突然发现之前好像设置审查人员人数时弄错了,应该是设置到2人以上?我这里自己就能合并了……不过问题不大,写这篇文章也只是我一个人在写(哭……)

image.png

image.png

image.png

后面就是审核同学看过后合并进主分支就好。到这里……诶不对,审核出问题后还要和写代码的同学交流,修改bug后继续流程。这就是我曾经使用过的协作方式,感觉还是很容易上手的,一些步骤也可以省去或增加一些细节,总之就是怎么舒服怎么来。

这是我在兔年的第一篇文章,这里祝大家新年快乐,万事如意!(词穷不好意思……)希望今年我和大家都能有更多进步,学到更多芝士!