miniapp git branch rule - sibbay-ai/public GitHub Wiki

目的

  • 管理所有开发者的代码提交,严格配合开发过程管理和代码 review 过程,防止没有 review 的代码进入重要环境;
  • 精准统计每位开发者的工作量,特别是 BUG 修改类工作的工作量
  • 便于追溯问题

规则

master 分支

  • 每个代码工程都有 master 分支,该分支用于合并已发布到正式环境的代码,并标记 TAG
    (由于小程序的特殊性,master 分支的代码合并一般是在腾讯平台发布后再合并的)

  • 所有开发者都不能直接向 master 分支 push commit

  • 只有代码负责人能从 develop 分支向 master 分支创建 pull request, 并进行合并操作。

develop 分支

  • 每个代码工程都有 develop 分支,该分支用于合并所有开发者创建的 pull request

  • 只有代码负责人,能向 develop 分支直接 push commit, 或者合并 pull request 到 develop 分支

  • 其他开发者可从其他分支创建指向 develop 分支的 pull request

其他分支

  • 开发者进行开发工作时,需在 masterdevelop 之外创建其他分支
  • 其他分支基于最新的 develop 创建,以减少代码冲突
  • 分支需根据开发者和开发目的命名,例如 ben7th/bug-fix-for-ui, ben7th/add-config-file
  • 分支创建后,可在合适的时间(一般是开发完毕时)创建 pull request, 指向 develop 分支
  • 代码负责人 review pull request 包含的代码,进行必要的修改,解决冲突后,合并到 develop 分支

pull request

  • 代码负责人能够创建 develop -> master 的 pull request
  • 所有开发者都能够创建 其他分支 -> 'develop' 的 pull request
  • 所有 pull request 都必须通过代码负责人的 review 才可合并