Skip to main content

Choerodon猪齿鱼实践之开发应用服务

· 8 分钟阅读

当有多个开发人员参与项目时,通过Git进行分支和Tag管理,将软件的版本控制以及分支管理贯穿于整个软件产品的生命周期,能有效的避免代码冲突,提高开发效率。Choerodon 代码仓库就是基于 Git 进行代码版本管理。本文介绍了 Choerodon 猪齿鱼中开发应用服务的方法,包括创建分支、克隆、推拉代码、合并分支等。

开发应用服务

在Choerodon中开发应用服务之前,首先需确认已在Choerodon项目下创建应用服务,并配置了 Git,包括下载安装、设置等。

第一步:创建分支

Choerodon使用 GitLab 进行分支管理,默认分支为 master。目前支持六种常见的分支类型:

  1. master:主分支,用于版本持续发布;
  2. feature:特性分支,用于日常开发时切出分支进行单功能开发;
  3. bugfix:故障修补分支,通常用于修复故障;
  4. release:发布分支,适用于产品发布、产品迭代;
  5. hotfix:热修分支,用于产品发布后修复缺陷;
  6. custom:自定义分支,用户可以自定义需要的分支类型。

    注:bugfix旨在与敏捷的问题类型(故障)呼应,用于标识此分支的任务是修复某个故障

这里我们以 Feature 分支为例,在Choerodon中进行分支创建。

  1. 在 代码管理 -> 分支 界面,选择应用服务猪齿鱼Todo服务

  2. 点击创建分支,如果没有issue可选择,则先创建问题, 选择对应的issue;

  3. 分支来源选择master,填写issue号,如feature-1,点击创建,即可创建一个分支;

    例如,

    • 问题名称: choerodon-dev-1 猪齿鱼快速入门文档
    • 分支来源: master
    • 分支类型: feature
    • 分支名称: feature-choerodon-dev-1

  4. 创建完分支之后,您就可以进行后续的本地开发。

Choerodon 采用 githubflow作为我们的分支管理策略的主体。并在此基础上,参考了一些其他策略,对开发者的开发分支做了一定程度上的细分。更多相关信息参考分支管理

第二步:拉取代码仓库

  1. 代码仓库 菜单,找到猪齿鱼Todo服务的仓库地址,复制仓库地址;
  2. 本地通过git 命令拉取生成的项目代码;
  3. 切换到对应分支进行本地开发。

$ git clone `仓库地址`
$ cd ./choerodon-todo-servie
$ git checkout feature-choerodon-dev-1

克隆代码时候,会让输入用户名,密码。用户名为平台用户名,密码为用户新建后收到的站内信中的Gitlab仓库密码,若忘记密码,可以到个人信息页面重置GitLab仓库密码。

第三步:本地开发

将代码克隆到本地后,就可以在本地进行开发。

通过Choerodon 提供的MicroService 应用服务模板,会生成一个极简单的spring boot 应用服务。模板本身生成的应用服务可以直接运行在平台上,如需拓展更多功能,可具体参考后端开发手册

第四步:提交代码

当本地做了相关修改之后,需要将本地仓库的代码提交到远程分支上。提交的用户名密码同克隆代码库的一样。

$ git add .
$ git commit -m "[ADD] init todo-service"
$ git push origin feature-choerodon-dev-1

提交时需要遵循Choerodon 的规范:

  • [IMP] 提升改善正在开发或者已经实现的功能
  • [FIX] 修正BUG
  • [REF] 重构一个功能,对功能重写
  • [ADD] 添加实现新功能
  • [REM] 删除不需要的文件

第五步:代码集成

当代码提交到服务器之后,可以在页面查看持续集成。

  1. 在代码管理 -> 持续集成 页面,选择应用服务猪齿鱼Todo服务
  2. 点击阶段跳转到Gitlab 查看 CI 执行情况。

第六步:合并分支

当 CI 执行通过以后,可以将feature分支合并到master分支上。

  1. 在代码管理 -> 合并请求 页面,选择应用服务猪齿鱼Todo服务
  2. 点击创建合并请求,跳转到Gitlab;
  3. 分别选择源分支为feature-choerodon-dev-1 ,目标分支为master,并提交合并请求。等待ci流水线通过后,点击合并分支。

master分支的ci流水线 通过以后,在应用服务 -> 点击应用服务 猪齿鱼Todo服务 ,便能在”服务版本“Tab页中看到猪齿鱼Todo服务 生成的版本。此处的版本会用于后续的部署操作。若想了解更多Choerodon猪齿鱼版本相关的内容,可参考《Choerodon猪齿鱼实践之持续交付中的分支管理与版本控制》。

总结

以上就是使用Choerodon开发应用服务的全部流程,应用服务的开发过程也可以说是代码管理的过程,支持着团队的协作开发与持续集成,保证项目的进度和效率。

关于猪齿鱼

Choerodon 猪齿鱼作为全场景效能平台,是基于Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台通过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。

更加详细的内容,请参阅Release Notes官网

大家也可以通过以下社区途径了解猪齿鱼的最新动态、产品特性,以及参与社区贡献:

欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态平台。