本文针对的是追求极致、快速的产品响应团队的。以下的观点和内容都是围绕这个主题,暂时不涉及个人学习和团队学习。
在说工作流程之间,想说一下我们平常工作中遇到的一些困惑或者说现象
在一个团队里,同时有好多事件要解决。有的是产品迭代,有的是bug修改,有的可能是技术结构调整等。怎么去保证他们之间的独立性?
什么时候应该切分支?合并后的分支还能再作修改吗?分支什么时候需要删除?什么时候这个分支的生命周期才算完成?
主干可以修改代码吗?多少次分支合并到主干才发布一个版本?
什么时候版本才算稳定。什么时候才需要打标记?
…………
可能期间还会有更多的疑问。但是汇总起来是以下两个问题:
- 团队里不是每个人都能完整的回答或者解决这个问题,所以导致很多人在重复的去思考这些问题。
- 怎么避免因为误操作而引起的产品不完整。
这两个问题,也是我们工作流的目的。
下面我就把git的几个概念及生命周期应用于工作中的职责阐述一下。
分支的职责:
主干的职责:
描述清楚职责后,工作流程如下:
最后希望,通过统一的git开发式的工作流程来进行快速的持续迭代。或者说最终目的是:希望团队里的成员只专注业务,与业务无关的通过约定、规范、流程来规避。