大型 Android 系统重构实战
黄俊彬
Thoughtworks 资深咨询师
2840 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 29 讲
大型 Android 系统重构实战
15
15
1.0x
00:00/00:00
登录|注册

19|仓库&版本管理:如何从物理边界上规范依赖?

你好,我是黄俊彬。
前面我们完成了 Sharing 项目的组件化架构改造,但是在仓库与版本管理上,依旧还是与改造前一致,采用的是单体仓库以及组件源码依赖的方式。
当代码以及团队达到一定的规模以后,这会给项目仓库和版本的管理带来诸多问题。我总结了一张常见问题的表格,你不妨“对号入座”,看看自己的项目有没有“中招”。
那么怎么来解决上面这些问题呢?今天我们将一起来学习如何对组件做代码仓库管理以及二进制版本管理,让组件能更加独立地迭代演进,从物理上规范好组件之间的依赖。

仓库管理

首先,我们先了解一下代码仓库管理的模式,常见的有单仓模式和多仓模式。

单仓模式

单仓模式指的是所有的组件代码统一在一个版本仓库中管理,团队成员基于一个代码仓库来完成日常的开发活动,就像后面图里画得这样。
这种仓库管理的方式的优点是简单,所有的代码在一起维护,团队所有成员能共享产品的所有代码。由于所有代码都在一个仓库,所以代码集成方便,也便于团队统一代码规范。团队之间能共享到所有人的代码,方便大家了解项目的整体代码情况以及学习其他组件架构及代码设计。
但单仓库的缺点就是当代码及团队规模庞大时,会带来后面的问题。
1. 开发人员容易受到干扰,不能专注在自己所属的组件代码上。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了仓库管理和版本管理中的常见问题,并提出了解决方案。在仓库管理方面,文章讨论了单仓模式和多仓模式的优缺点,并建议在组件化项目初期采用单仓模式,待组件稳定且团队规模达到一定程度时再考虑分离,采用多仓模式。在版本管理方面,文章介绍了二进制依赖的优势,包括提高编译速度、减少代码风险、灵活的版本管理等,并提出了搭建二进制版本管理服务器、规划组件版本需求、自动化发布流程等需要注意的方面。最后,文章以Sharing项目的日志组件为例,演示了如何进行组件版本管理的改造。总的来说,本文通过实际案例和技术实践,帮助读者了解了仓库管理和版本管理的重要性,以及如何在实际项目中进行相应的管理和改造。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《大型 Android 系统重构实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • 我的video
    老师可以介绍一下monorepo吗

    作者回复: 可以参考一下文中的单仓模式。

    2023-04-10归属地:上海
  • peter
    请教老师几个问题: Q1:安卓APP现在可以接入chatGPT吗?市场上有APP使用chatGPT的案例吗? Q2:屏幕适配问题,如果自己实现(不用框架),字体用sp、距离用dp可以实现适配吗?(或者说,sp、dp会存在适配问题吗?)

    作者回复: Hi,peter。 Q1:我了解到的有些厂商已经开始在谈合作,可能直接在系统层面就做一些应用场景的创新。国内的话,我觉得目前主要还是墙的问题。 Q2:可以。但是有些如果是大屏,布局可能都重新设计了。

    2023-03-24归属地:北京
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部