使用GitLab做代码版本控制


使用GitLab做代码版本控制

先决条件:

  • 安装 Gitlab

设置为中文

默认情况,GitLab 使用英文界面,使用下述方法设置为中文(只是大部分汉化)

  • 点击右上角的头像
  • 点击 Sttings
  • 下拉找到 Preferred language
  • 选择 简体中文

群组

为每个研发团队建立一个群组,如某一组微服务的守护者团队

  • 在 GitLab 主页头部导航栏点击,在点击浏览群组
  • 点击新建群组,Group 设置为 Internal
  • 点击进群组然后点击成员
  • 为代码审核和发布权限的人设置 Maintainer 权限,为开发者设置 Developer 权限

项目

  • 点进某个群组,点击新建项目
  • 设置项目名称
  • 创建完成后进入项目
  • 右边导航栏点击设置-仓库
  • 展开 Protected Tags
  • 输入 * ,并点击 Create wildcard *
  • Allowed to create 设置为 Maintainers(取决于团队是否允许审核代码的人发布代码)

需要管理员账号设置权限限制,将所有的项目和群组公开级别都禁止为public

扩展设置

如果需要为项目配置持续交付能力,按照下述步骤设置自动的主动推送模式CI触发

  • 点击 设置-集成
  • Project services 中找到 JetBrains TeamCity CI
  • 勾选 Active,设置 TeamCity 的地址,CI的build id,Teamcity的用户名密码

推荐使用TeamCity的管理员账号密码
尽管不设置,不会影响到CI触发,但是设置后会提升 TeamCity 的性能和时效性

参照 在团队中使用TeamCity+Gitlab实现持续交付工作流

开发工作流

创建议题

当需求确认后/或线上出现bug错误,需要开发人员创建对应的议题进行开发和修复

  • 进入项目主页
  • 在右侧导航栏点击议题
  • 点击 New issue
  • 填写标题和描述
  • Assignee指定给需求开发负责人/开发者
  • 设置截止日期、标记(如需求/bug/代码优化)
  • 如果需要设置季度里程碑则设置,大部分情况下不需要设置

创建需求分支

  • 打开议题
  • 点击Create merge request 旁边的小箭头
  • 编辑分支名称,如 feature/xxx 、 hotfix/xxx
  • 点击创建合并请求

切换分支开发并审核代码

  • 使用Git客户端工具切换到创建好的分支,并持续提交代码
  • 项目审核人在对应的合并请求中可以查看提交记录,并在提交记录中查看和评审代码

部署

  • 运维使用 refs/merge-requests/{merge-request-id}/head 规格来拉取对应的需求分支
  • 将该分支代码编译并发布到测试环境
  • 测试验收完成后,项目负责人创建基于当前分支的Tag,如 20190101-UAT
  • 运维使用 refs/tags/20190101-UAT 拉取代码并编译发布到预发布环境
  • 预发布环境验收完成,项目负责人进入合并请求界面,点击 Merge
  • 基于master分支创建Tag,如 20190101-PROD
  • 运维使用 refs/tags/20190101-PROD 发布代码到生产环境

注:上述流程中的测试环境和预发布都是需求维度的相互隔离,取决于你的项目背景,如果所有的需求都在同一个仿真环境,需要创建一个中间的临时分支,将2个需求的代码合并到该分支,之后基于临时分支创建Tag


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM