美文网首页程序员iOS DevelopmentAndroid知识
Git工作流及发布规范(App)

Git工作流及发布规范(App)

作者: fxm5547 | 来源:发表于2018-01-19 22:06 被阅读66次

首发于fxm5547的博客

参考

介绍

本约束规则适用于所有iOS和Android工程代码。管理工具使用Coding.net提供的git托管服务。

Git的workflow有多种,各有利弊,无所谓好坏。但团队协作需要有一致的规范,所以请大家务必遵守。

除了一致性之外,这个规范的目的是以下几点:

  • 方便开发和测试同学协同,高效完成研发工作,产出高质量的成果。
  • 在需要修复紧急 bug 并尽快发布时,可以只发布必要的 bugfix 而不同时发布还不应发布的其他改动。

branch和tag

使用Feature Branch Workflow,按照需求新建feature branch

Branch: feature branchmasterrelease。master是默认分支,release 是用于发布的分支。

  • feature branch: 功能开发或bug修复从master新建一个分支,push到远程仓库,提交合并至master的请求,合并后删除该分支。
  • master: 只负责合并各feature branch的代码,且保证master分支随时处于可测试,测试之后可发布状态。 提交后自动触发集成
  • release: 是当前发布的分支,在这个分支只能从master新建 或 增加从 master cherrypick 过来的 commit。

Tag: 对应每个发布版本的 tag。

  • SDK 和App应用程序的 tag 遵照 <major>.<minor>.<patch>的命名,如 2.5.1,参考SemVer
  • 服务端程序的 tag 以发布的日期命名,如 2016.07.28,如果有 bugfix,则在后面增加小写字母,如 2016.07.28 后是 2016.07.28a,然后是 2016.07.28b。
    图片
    branch&tag

代码提交应尽量采用原子性的提交,即基于单一功能的提交(worktile单一任务或其拆分出的功能),不建议一次性提交多个功能,必须保证每次提交都是可执行的完整功能。提交时必须写清晰的提交日志。

开发测试流程

  • 开发测试流程


    图片

发布管理

所有版本发布前,测试工程师必须确认测试已完全覆盖并通过。

  • 发布新版流程:删除旧的 release branch,并从当前的 master 创建新的 release branch;
  • Bugfix 流程: bugfix 指的是修复已经发布的程序(release branch)中的缺陷。在 release branch 从 master branch cherry pick 修复该缺陷的一个或多个 commit;

发布新版本详细步骤

  1. Coding上删除release分支;
  2. Coding上从master分支新建release分支;
  3. 从release分支打包供集成测试后发布;
  4. 在Coding上基于release分支打tag,添加更新日志。

发布补丁详细步骤

  1. 先update整个工程;
  2. git切换到release分支;
  3. 执行 git cherry-pick commit_id 命令;
  4. push到远程release分支;
  5. 从release分支打包供集成测试后发布。
  6. 在Coding上基于release分支打tag,添加更新日志。

其他

  • 并不是每个 bug 都有专门发布 bugfix 版的必要,对于不紧急的 bug,可以 fix 后随下一个版本发布。
  • master分支和release分支只有负责人有readwrite权限,其他开发人员只有read权限。

相关文章

  • Git工作流及发布规范(App)

    首发于fxm5547的博客 参考 http://open.leancloud.cn/git-branch-guid...

  • GitFlow + Gitlab 工作流及规范

    GitFlow + Gitlab 工作流及规范 一、 git 命令及配置 1.Git ssh 与 gitLab配置...

  • git操作

    git规范 Git 使用规范流程 团队中的 Git 实践 Git: 教你如何在Commit时有话可说 Git工作流...

  • git工作流

    先上图,后讲解 git工作流,什么是git工作流,个人觉得这个就是一个使用git协同开发的规范,有了这个规范可以很...

  • 项目git commit时卡主不良代码:husky让Git检查代

    看完 《前端规范之Git工作流规范(Husky + Commitlint + Lint-staged)https:...

  • Git工作流及发布规范(BED-FED)

    首发于fxm5547的博客 参考 http://open.leancloud.cn/git-branch-guid...

  • git

    GIT git工作流 集中工作流 功能分支工作流 gitflow工作流master分支存放所有正式发布的版本,可以...

  • 规范

    1 工作流规范 1.1 git规范 1.1.1 分支管理规范 git版本管理中主要有以下几种类型的分支:maste...

  • GIt 常用操作指令

    《Git 使用规范流程》 《常用 Git 命令清单》 《Git 远程操作详解》 《Git工作流程》 开发过程中,用...

  • git工作流及commit规范

    Git 是目前最流行的源代码管理工具。可以方便的维护和管理团队合作项目。 但若没有一个合理,规范的分支命名和管理,...

网友评论

    本文标题:Git工作流及发布规范(App)

    本文链接:https://www.haomeiwen.com/subject/wbwaoxtx.html