git 团队开发流程规范

git开发流程规范

最近公司在由 svn 转为 git 做项目管理,之前在小团队开发的时候最多也就用到 dev 分支和 bugfix 分支,来到新的公司团队比较大,各自负责各自的功能模块,为了大家更规范的开发,公司参考了一些资料。制定了一下规则。

分支命名规则

  1. 主分支:master
  2. 开发分支:developer
  3. 功能分支:feature - 分支名称
  4. 分支发布:release - 版本号
  5. bug 分支修复:bugfix - 版本号

操作步骤

  1. 管理员「项目负责人」创建 git 仓库,建立 developer 分支

    git branch develop 
    git push -u origin develop
    
  2. 项目成员「开发者」clone 项目,在本地建立自己功能分支

    git clone 项目 git 地址 
    git checkout -b develop origin/develop
    
    创建本地功能分支
    git checkout -b feature-[name-desc] develop
    
  3. 在自己的分支上进行开发 : git addgit commit 等,注意此时不要 push 到远程分支(origin)。

  4. 功能完成后可以直接合并本地的 developer 分支后 push 到远程仓库,合并的时候很大几率发生冲突,此时需要 merge ,merge的时候确保不影响项目其他成员,如果多个人都操作了同一个类,最好当面确认后在进行修改。等合并完成确认无误后,删除本地开发分支

    git checkout develop 
    
    git pull origin develop //确保本地 developer 分支为最新的
    
    git merge feature-[name-desc] 
    
    git push 
    
    git branch -d feature-[name-desc] //删除本地分支
    
    
  5. 发布分支

    git checkout -b release-0.1 develop
    
    一旦准备好了发版,合并修改到 master 分支和 developer 分支上,删除发布分支
    
    合并修改到 master 分支
    git checkout master 
    git merge release-0.1 
    git push 
    
    合并修改到 developer 分支
    git checkout develop 
    git merge release-0.1 
    git push 
    
    删除发布分支
    git branch -d release-0.1
    
  6. 为 master 分支打发版 tag

    git checkout master 
    git tag -a 0.1 -m "Initial public release" master 
    git push --tags
    
  7. bug 修复分支,如果正在开发功能的同时,developer 上发现了线上 bug,或者未上线的 bug,我们可以开一个 bugfix 分支来修复 bug

    git checkout -b bugfix-#001(bug 分支名称) master(或 developer)
    
    /***  去修 bug 吧 */
    ....
    /***  修复完成 */
    git checkout master  
    git merge bugfix-#001 
    
    git push 
    git branch -d bugfix-#001
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git分支管理 master:主分支,当前分支上的代码随时可以直接发布,并且只能通过Pull Request从其他...
    UEUEO阅读 9,765评论 5 33
  • 我也不是生来就为柴米油盐而操劳,我也不是生来就世故圆滑。如今,我会把心声都藏起来,赢过黑夜,安静地做自己的事情,过...
    简书兜阅读 350评论 0 0
  • textnut是一个markdown编辑器,并不支持实时预览首先新建一个markdown文件 输入#+空格代表一级...
    鸭梨山大哎阅读 725评论 0 0
  • 2013.7-2014.7这一年中主要适应惠州生活,天天担惊受怕,想保住自己的这份收入,不给家人添麻烦。 2014...
    _小眼镜阅读 205评论 0 0
  • 感觉在博客上有大牛介绍IOS框架讲解的比较详细,在此向大牛致敬写篇文章。大牛文章关于框架 我们在做IOS开发过程针...
    JackJin阅读 720评论 1 2