客户端单周发版下的多分支自动化管理与实践

背景

目前,互联网产品呈现出高频优化迭代的趋势,需求方希望尽早地看到结果,并给予及时反馈,所以技术团队需要用“小步快跑”的姿势来做产品,尽早地交付新版本。基于以上背景,美团客户端研发平台适时地推行了单周发版的迭代策略。单周版本迭代的优点可以概括为三个方面:更快地验证产品创意是否符合预期,更灵活地上线节奏,更早地修复线上Bug。

首先说一下美团平台的发版策略,主要变更点是由之前的每四周发一版改为每周都有发版。具体对比如下:

  • (旧)三周迭代指的是2周开发+1周半测试,依赖固定的排期和测试时间,如果错过排期,则需要等待至少20天方可跟着下个版本迭代发布,线上验证产品效果的时间偏长。具体示例描述如下:

  • (新)单周版本迭代指一周一发版,单周迭代版本排期、测试不再依赖固定时间节点,需求开发并测试完成,就可以搭乘最近一周的发版“小火车”,跟版发布直接上线。对于一般需求而言,这将会大大缩短迭代时间。

业务方研发人员的痛点

在之前按月发版的迭代节奏下,基本上所有的需求都属于串行开发,每个版本的开发流程比较固定。从“评审-开发-提测-灰度-上线”各个环节都处于一个固定的时间点来顺序执行,开发人力资源的协调方式也相对简单。全面推进单周发版之后,并不能把所有需求压缩到5天之内开发完成,而是会存在大量的并行开发的场景,之前的固定时间节点全部被打破,由固定周期变成了动态化调配,这给业务方的需求管理和研发人员人力管理都带来了指数式复杂度的提升。一旦进入并行开发,需求之间会产生冲突和依赖关系,版本代码也会随之产生冲突和依赖,这也大大提高了开发过程中的分支管理成本,如何规范化管理分支,降低分支冲突,把控代码质量,是本文接下来要讨论的重点。

下面描述了几种典型的单周发版带来的问题:

  • 业务需求开发周期不固定,会存在大量的多版本、多需求并行开发。平台只提供了单周发版的基础策略,每5天发一版,业务方完成需求即可搭车发版。

对于各业务方来说,需求开发往往并不是都能在5天内完成,一般需求在5~10天左右,在之前串行发版模式下这个问题其实也存在,但并不突出,在单周发版的前提下,都要面临跨版本开发,意味着多个版本多个需求会同步并行开发,这给业务方的分支管理带来了极大的挑战。

  • 业务方架构复杂,仓库依赖多,单周发版分支创建合并维护成本大。

交通业务线涉及火车票、国内机票、国际机票多条业务线,代码仓库除了业务线的独立仓库,还有交通首页,交通公共仓库,RN仓库等多个仓库,Android端6个Git仓库,iOS端5个仓库,RN5个仓库,共计16个Git仓库。

多仓库频繁发版分支代码存在安全风险,容易漏合代码,冲掉线上代码。

  • 业务线自身的公共基础库需求变动频繁。也需要具备单周发版的能力。

例如交通公共基础仓库,承载了很多交通业务线的UI功能组件,这些公共组件的业务变化频繁,公共基础仓库变化的同时,可能会对使用组件的业务产生影响,需要同步的升级发版。美团平台的策略是公共服务组件每四个小版本统一升级一次,但对业务方自身组件这种策略限制较大,还是需要公共组件也要具备随时发版的能力。

单周发版分支管理解决方案

针对上面提出的问题,交通客户端团队通过技术培训、流程优化、关键点检测、自动化处理等方式保证分支代码的安全。技术培训主要是加强技术人员分支管理的基本知识,Git的正确使用方法,这里不做过多描述。本文主要讨论关键点检测,以及如何进行自动化的分支管理。

在实施单周发版之前,业务方代码仓库只有两个分支,Develop分支,即开发分支;Stage分支,即发版分支;开发流程基本在串行开发模式,每个版本10天开发,8天测试,然后进入下一版本的开发。

这种方式只能适用于节奏固定的长周期开发方式,对于多版本并行开发来说,有点力不从心,显然已经不能承载当前更灵活的发版节奏。

针对这些问题,我们推出了如下分支管理结构。总的来说,就是废除之前作为开发分支的Develop分支,建立对应的Release发版分支,每个版本打包从Release分支直接打包;同时Stage分支不再承担打包职责,而是作为一个主干分支实时同步所有已发布上线的功能,Stage分支更像一个“母体”,孵化出Release分支和其它Feature分支;当Release分支测试通过、并且发版上线之后,再合入到Stage分支,此时所有正在开发中的其它分支都需要同步Stage分支的最新代码,保证下一个即将发布的版本的功能代码的完整性。

上面的流程描述可能有些复杂,下面是简化的流程图,每个版本都有自己的生命周期:

  1. 从Stage创建一个Release分支;
  2. 进入开发阶段;
  3. 如果Stage分支有变化,同步Stage分支;
  4. 打包测试;
  5. 测试通过,发布线上;
  6. 发布线上之后,合回Stage分支。

为了适应单周发版,新的开发流程也引入了很多新的挑战。例如下图所示的一个Branch分支中涉及的六个关键点:创建分支、合入主干、主干变化通知、Merge主干变化、检测主干同步、未同步拦截,除了这些还要考虑多仓库同步操作的问题,还有热修复版本的管理方式的问题。能否把这些关键节点合理的规范和把控起来,是我们当前应对多分支并行开发的主要难点:

如何更高效的解决这些问题呢?结合我们当前使用的工具:Git + Atlassian Stash 代码仓库管理工具;Jenkins Build打包工具;大象(美团内部通讯工具)内网通信工具。目前这三个开发工具已经非常成熟、稳定,并且接口丰富易于扩展,我们需要配合当前单周发版的分支管理模式,利用这些工具来进行扩展开发,正所谓“要站在巨人的肩膀上”。

  1. 创建分支Release分支如何创建,何时创建,分支命名规范定义如何约束?

创建Release分支,本质上是从Stage新建一个分支,当前提前一个周期创建新的发版分支,例如在10.1.1版本Release后,创建10.1.3版本的分支,此时10.1.2版本处于开发测试阶段。业务方所有的分支命名和平台的分支命名保持一致,采用Release/x.x.x的格式,但同时需要升级成为即将发布的Release版本号,例如10.1.3。

现在交通业务线多达十几个仓库,每个仓库每周都要操作一次需要耗费大量人力。之前每个分支的创建都是通过Stash或者手工创建,能不能自动化批处理的创建呢?答案是肯定的。对此,我们采用了Jenkins的方式,需要建立一个Jenkins Job, 基本原理就是通过命令行的方式进行Branch的创建,然后通过Job管理,批处理建立所有仓库的Release分支,这样就收敛了Branch的创建,即采用统一的命名规范,并且同时升级版本号。这就解决了创建分支的难点,实现了自动化创建分支,并且实现了规范化命名。

  1. 如何知道Stage分支有变化,变化后需要做什么,不做会怎样?

一个好的开发习惯,就是每天写码之前都同步主分支,但是还是需要一个机制来确保同步。这里做了三个措施来确保各个分支和Stage是保持同步的:一个通知,一个警告,一次拦截。这三个步骤解决主干变化通知、检测主干同步、未同步拦截的问题。

**一个通知:**具体路径如下,建立了一个内部推送公众账号和一个Jenkins监听Job,当所有交通业务仓库Stage分支有代码改动,通知所有对应的开发人员,该仓库有代码变化,请及时合入。

**一次警告:**本地开发过程中,每次提交代码到远端仓库时,会触发一个Stage分支代码同步检测的脚本,如果发现未同步,会通过内部通讯系统通知提交者存在未同步主分支问题。但这里目前并不做强制拦截,保证分支代码开发的整体流畅性。

**最终拦截:**在开发分支打包的过程中强制拦截,最终功能代码上线还是需要打包操作。在打包操作时统一收口,由于之前打包也是在Jenkins上来完成的,这里我们也是通过在打包Jenkins上接入了分支合并检测的插件,这样每次打包时会再次检测和主分支的同步情况。如果发现未同步则打包失败,确保每次发版都包含当前线上已有代码的功能,防止新版本丢失功能。

  1. 如何合并分支,如何保证漏合?

和上面提到的第一个如何创建分支的问题类似,通过Jenkins Job来进行批量操作,可以一键创建所有分支的Pull Request;在每个版本发版之前,统一进行一次打包,合入美团的主分支,防止多个仓库有漏合的情况。

  1. 公共基础库版本策略?

公共基础和业务分支保持同样的策略,通过批处理脚本同时建立分支,合并分支,监听分支变化,需要注意的是,每次版本升级,公共基础库也需要同步的打包,并且强制业务库升级。不然,如果基础仓库存在接口变动,有的业务升级了,有的业务没升级,最终会导致无法合入主分支,进而无法打出App包。

  1. 热修复的版本管理策略?

热修复确实是一种非常规的处理方式。从原则上来讲,热修复需要在对应的Release分支上进行修改,然后把修改合入Stage分支,同时需要同步到其它正在开发的分支。实际的处理需要根据具体情况来分析,是否需要对线上多个版本热修复。如果多版本都要修复就不能再合入Stage分支,否则会导致Stage分支冲突,如果把Stage分支合入需要热修复的其它分支,会把线上当前最新代码带入历史旧版本,会导致版本兼容性问题。最终执行起来可能还是对热修复版本进行单独处理,不一定要进行Stage主分支的同步,热修复的版本管理成本会比较高,更多的需要人工介入。

未来展望

目前整体的分支发版流程已经基本完成,现在已经稳定运行了10个小版本,同时没有出现因为分支管理问题而引发的线上问题。

不过,当前整体流程的自动化程度还有待提高,每周需要人工去触发,很多代码合并过程中的冲突问题还需要人工去解决。未来我们希望能够自动化地根据平台的版本号自动创建分支,并且对于一些简单的冲突问题拥有自动化的处理能力。随着单周发版的不断成熟,未来对于持续交付能力也将不断提升,发版节奏可以不限于单周,一周两版或是更快的发版节奏也成为一种新的可能。

作者介绍

  • 王坤,美团客户端开发工程师,2016年加入美团,目前主要负责大交通业务的客户端架构、版本管理及相关工作。

相关推荐

美团 LongCat-2.5 开源:从看见,到抵达

美团正式开源 LongCat-2.5,采用MIT协议,支持商用推理部署与二次训练,无需额外授权。

美团技术团队 279

美团正式发布 LongCat-2.5:面向智能体任务的原生多模态模型

美团正式发布 LongCat-2.5,这是一个面向长程智能体任务的原生多模态模型。模型总参数量为 1.6 万亿,每个 token 激活约 480 亿参数,在 LongCat-2.0 的基础上进一步强化了原生视觉理解与智能体编程能力。

美团技术团队 2475

如何在“不能出错”的系统里使用 AI Coding?分布式存储实践与边界

AI 能让代码写得更快,但在「不能出错」的分布式存储系统里,如何确保提效不变成风险?本文结合美团基础技术部在 AI 评审、问题排查和自动化开发中的真实实践,分享 AI 能帮上什么忙、容易在哪些地方犯错,以及哪些地方仍需要人来把关。比「多写代码」更重要的,是让代码和结论经得起验证。希望这些经验能为复杂系统中的 AI 应用提供参考,在享受效率提升的同时,守住质量与稳定性的底线。

美团技术团队 348

从 LOOP 到图探索 —— 算法模型的 AutoResearch 自进化系统架构演进之路

算法工程师的一天是“改代码—提交训练—等待—看日志—决定下一步”,过程中还经常被打断。我们团队从 Karpathy 的 AutoResearch 出发,经过三次架构重构,搭建出一套可在企业云端训练平台使用的算法研究自进化系统。本文分享这套系统的设计理念、架构演进与可信度设计,希望对大家有所帮助或启发。

美团技术团队 479

SLM 生成式高并发推理引擎:延迟约束下的有效吞吐优化

本文为SLM(Small Language Model, 小参数量语言模型0.5~1B)在搜推场景的大规模落地提供了一套高性能、可复用的工程实践。

美团技术团队 570

MTFM:美团统一推荐基座大模型在外卖多业务场景的落地实践

美团在 MTGR 基础上提出统一推荐基座大模型 MTFM,首次实现外卖多个主要业务的统一精排模型。围绕规模可扩展性、场景可延展性与架构高效性三大挑战,MTFM以异构 Tokenizer 与动态掩码实现多场景特征免对齐,通过混合注意力与 Target Scale-Up 提升模型 Scaling 能力,借鉴 LLM 优化实践提升深层网络训练效果,并以 User-Level 训练范式与定制算子保证系统开销可控。美团外卖多个业务订单量提升 2.06%~6.68% 不等,推理成本降低 24%。

美团技术团队 712

《Agent 评测白皮书》系列01:Agent 评测全览

我们推出了《Agent评测白皮书》系列博客,体系化地为大家讲解评测的落地指南,分为《评测全览》、《冷启动篇》、《扩量篇》、《自进化篇》等共4篇,本文为系列的第一篇。

美团技术团队 676

美团智播——数字人直播技术创新与实践

美团智播,是面向本地生活场景的AI数字人直播解决方案,融合大模型、数字人与多模态交互技术,提供丰富的行业专属数字人形象,支持真人1:1复刻与门店实景定制,30秒生成直播素材,3分钟完成开播配置,7×24小时稳定上播。过去一年,依托生成式AI技术,数字人直播月日均GTV同比增长82.12%,月日均观看人次同比增长163.44%,开播场次提升11倍,充分验证了AI数字人直播在本地生活商业闭环中的实际价值。

美团技术团队 915

GeoRA: 为RLVR设计的LoRA——ACL 2026杰出论文解析

本文介绍了一种专为 RLVR 设计的低秩训练方法,以及它在业务 Agentic RL 中的落地经验。

美团技术团队 687

美团搜索3.0:LLM 语义表征在排序模型的探索与应用

美团搜索团队正依托团垂融合新架构与生成式大模型新技术,全面重构本地生活搜索底座。本系列技术博客将持续介绍美团搜索 3.0 的技术探索,本文聚焦 LLM 语义表征在服务零售排序场景上的三期实践——从单点特征验证到系统性表征体系构建,再到跨场景迁移复用,探索语义匹配信号在搜索排序中的应用路径。

美团技术团队 921

KDD‘26 美团学术论文精选及KDD Cup‘26 DataAgents赛道冠军思路解读

本文精选了美团技术团队被 KDD 2026 收录的 8 篇论文进行分享,这些论文覆盖了推荐大模型、生成与奖励建模框架、智能体搜索、Transformer 框架、元泛化框架等技术领域。

美团技术团队 960

Agent评测漫谈 —— 由浅入深讲解Agent评测

本篇博客是一篇科普文章,由浅入深的介绍Agent评测。其中前两章系统介绍了评测是什么,以及如何建立评测体系;其中第二章是美团图灵Agent评测团队深入美团各业务团队BP总结出的实践经验,是我们在两年实践过程中逐步打磨出来的认知。第三章重点介绍了龙虾/爱马仕这类长程Agent框架的出现对评测带来的变化。

美团技术团队 1074

美团正式发布 CatPaw:全场景 AI Agent,从个人提效到企业智能化

搭载 LongCat 2.0 的美团全场景 AI Agent 平台 CatPaw 正式上线,将模型能力从“跑得动”推向“用得好”。CatPaw 提供开箱即用的 AI 智能工作台与企业级 Agent 开发托管能力。

美团技术团队 1018

让AI离开温室,走向动态世界:MineExplorer揭示顶级多模态大模型被忽视的能力断层

美团 LongCat 团队构建了MineExplorer——首个在开放世界中做到分钟级长程任务的评测基准,系统性地评测多模态大模型在需要长程规划、并包含隐藏前置条件的任务中的真实能力。

美团技术团队 868

下一代搜索智能体评测基准!美团开源LoHoSearch,用知识图谱校准AI能力认知

过去一年,我们见证了 Search Agent 能力的显著演进。在 BrowseComp 等评测上,顶尖模型准确率从最初的30%区间迅速攀升至90%以上。然而,当基准迅速饱和,其区分模型能力的价值也随之递减。

美团技术团队 912

直播回放·含 ACL‘26 杰出论文 | 美团 AI 顶会论文 32 篇精讲

2026 年,美团技术团队数十篇论文被 ACL、SIGIR、ICML、KDD 等顶会收录。我们精选 32 篇,进行了 5 大专场直播。

美团技术团队 899

正式开源!美团 LongCat-2.0 同步开放国产卡推理代码

美团 LongCat-2.0 总参数 1.6T,平均激活约 48B,为真实的 Agentic Coding 任务而生,架构上创新性引入 LongCat 稀疏注意力和 N-gram Embedding,提升长上下文处理效率与 Token 级表示能力的同时,结合动态激活进一步强化了代码理解、生成以及执行的表现。

美团技术团队 864

美团 LongCat-2.0 正式发布:在国产算力集群上完成全流程训练与推理的万亿参数模型

6月30日,美团正式发布新一代万亿参数大模型 LongCat-2.0,并将对外开源。

美团技术团队 1212

LongCat 开源 VitaBench 2.0:长期动态智能体基准新标杆

VitaBench 2.0 是首个真实生活场景下面向长期动态用户建模的智能体评测基准,它系统性地评测大语言模型在长期、真实、动态的用户互动中个性化与主动性的能力

美团技术团队 1117

ICML 2026 | 美团技术团队学术论文精选

ICML(International Conference on Machine Learning,国际机器学习大会)是机器学习领域最具影响力的国际顶级学术会议之一。

美团技术团队 850

美团海报生成 AIGC 技术创新与实践

美团智能创作团队围绕海报生成 AIGC 构建了完整技术体系,打造「生成-编辑-评判」技术闭环,目前已在美团外卖、品牌 IP 等场景落地,已全部开源。

美团技术团队 2060

从月球漫步到赛博都市,WBench 测出了世界模型的边界

美团 LongCat 团队提出了 WBench,它是首个面向交互式视频世界模型的系统性多轮评测基准。它就像一台“CT扫描仪”,能精准定位当前世界模型在从“被动观看”到“主动交互”的过程中,到底卡在了哪里。

美团技术团队 1243

报名|ACL‘26 美团中稿精选:从能力评测到推理优化,构建生成新范式

本文分享了美团技术团队被 ACL 顶会收录的其中 6 篇论文,技术方向覆盖大模型评测、复杂流程推理、竞赛级数学思维优化、强化学习优化、生成式推荐等领域。

美团技术团队 1516

从高拟真到真可用,LongCat-Video-Avatar 1.5 正式开源

LongCat-Video-Avatar 1.5 即便在复杂商业场景里,也能稳定、自然地输出高质量内容,让数字人视频生成从彩排室的完美演练,走向千人千面的真实舞台。

美团技术团队 1590

美团跑腿 Skill:一句话,骑手来帮忙

美团跑腿 Skill 支持所有 Claw 客户端,包括 OpenClaw 本地版、火山引擎等云部署版、QClaw 等第三方客户端。

美团技术团队 1858

美团 LongCat 开源 General 365:树立推理评测新标尺

General 365 将推理评测从专业知识依赖中剥离出来,让我们直观地看到了大模型在真实世界的通用推理任务上的短板。

美团技术团队 2082

用Agent评测思路管理AI Coding —— 31万行代码AI重构的实践

当团队 90% 以上的代码由 AI 生成,31 万行的复杂业务系统还在高速膨胀,你会发现一个反直觉的事实:AI Coding 不会自动收敛复杂度 —— 没有统一规范的约束,不同人用 AI 写出的代码风格各异,系统反而会加速腐化。本文记录了我们如何在不停止业务交付的前提下,完成这场重构。

美团技术团队 2427

LARYBench 发布:定义具身动作表征 ImageNet,首次度量从人类视频学习的泛化表征

LARYBench (Latent Action Representation Yielding Benchmark),一个指引从大规模的视觉数据学习到通用的隐式动作表征的系统化评测基准。实验结果表明:在动作泛化和控制精度上,通用视觉模型的表现均显著优于专门为具身智能设计的动作专家模型,具身动作表征可以从大规模人类视频数据中涌现。

美团技术团队 2201

突破零样本TTS音色克隆上限:LongCat-AudioDiT 的声音克隆艺术

能不能让 AI 直接学会声音本身的规律,跳过中间环节?为破解这一技术瓶颈,美团 LongCat 团队正式发布 LongCat-AudioDiT。在该模型中,我们彻底抛弃梅尔谱等中间表示,直接在波形潜空间进行基于扩散模型的文本转语音(Text-to-Speech, TTS),从根源阻断数据转换的级联误差。

美团技术团队 1599

LongCat-Flash-Prover:AI 攻克数学定理证明,不仅要“算得对”,更要“证得严”

如何让 AI 从“猜答案”走向“严谨证明”,成为复杂推理具有挑战的课题。我们开源了专门用于数学形式化与定理证明的模型 —— LongCat-Flash-Prover。

美团技术团队 1802
上一篇: 【人物志】美团技术委员会前端通道主席洪磊:爱折腾的斜杠青年
下一篇: 【人物志】美团前端通道主席洪磊:一位产品出身、爱焊电路板的工程师
美团技术团队
美团技术团队 企业官方账号 企业官方账号
博客等级 码龄10年 3万+粉丝 754原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值