GitFlow终端使用手册

来源:互联网 发布:think in java在线 编辑:程序博客网 时间:2024/05/02 02:43

概念

  • 分支
    • master 分支, 即生产版本分支, 要谨慎对待
    • develop 分支,
    • feature 分支, 即新特性分支
      • 从 develop 创建
      • 每个新特性都需要开一个新分支
    • release 分支
      • 从 develop 创建
    • hotfix 分支
      • 从 master 创建
    • support 分支
    • tag 分支

安装

  • 下载
    • 在终端输入 curl -L -O https://raw.github.com/nvie/gitflow/develop/contrib/gitflow-installer.sh sudo bash gitflow-installer.sh

工作流程

  • 创建新项目 [管理员]
    • 如果是新组, 则在gitlab中创建新的Group
    • 在该Group中, 创建客户端,服务器,美术,策划项目[权限待定]

      比如 proj-client, proj-server, proj-art, proj-data
    • 创建其他辅助项目
    • 各项目中添加对应人员
    • 将各项目clone到本地
    • 在各项目目录中, 执行 git flow init, 初始化项目, 推荐采用默认名称
    • 在各项目目录中, 执行 git push origin develop, 将develop分支推送到远程
  • clone 项目
    • 各项目人员, 分别 clone 自己有权限的库
    • 执行 git chekcout --track origin/develop 切换到develop分支
  • 添加新特性(新功能)
    • 如果该特性牵涉到不同人员, 需要共同商定该特性在git中得名称. 比如, login
    • 在工作目录下, 调用 git feature start login
    • 推送该feature到远程, git push origin feature/login
      • 创建该分支的时候, 应该只有一个人创建, 推送到服务器, 其他人需要用该分支应该自行checkout该分支
    • 做正常开发, 正常commit, 并推送到远程 git push origin feature/login
    • 该功能完成后, 在gitlab中, 创建新的 Merge Request, 将新特性推送到 develop 分支, 等待管理员合并
  • 修复线上版本bug
    • 修复线上版本bug过程和添加新特性过程类似
  • 发布版本
    • 准备好合适的 develop 分支, 更新本地数据 [管理员]
    • git flow release start v0.2.0 开始制作 v0.2.0 的版本 [管理员]
    • 推送 git push origin release/v0.2.0 分支 [管理员]
    • 其他人员更新 release/v0.2.0 这个分支, 并在此分支上开发, 测试保证此 release 无问题
    • git flow release finish v0.2.0 完成此分支 [管理员]
      • 在提示中输入 Tag v0.2.0
    • 推送 developmaster [管理员]
    • 推送 Tag, git push origin --tags [管理员]
  • 参考资料

    • http://nvie.com/posts/a-successful-git-branching-model/
    • http://nvie.com/files/Git-branching-model.pdf
    • http://danielkummer.github.io/git-flow-cheatsheet/index.zh_CN.html
0 0