Github 升级到 Rails 5.2.1 了
简评:之前用的可是 3.2,早就该升级了啊。
Github 的 Rails 升级花了大约一年半的时间,这是有原因的,首先,Rails 本身的升级并不总是平滑的,有些版本有重大改变(breaking changes)。 Rails 改进了版本 5 的升级过程,这意味着虽然 3.2 到 4.2 需要 1 年,4.2 到 5.2 只需要 5 个月。
另一个原因是 GitHub 的代码库起码有 10 年的历史,多年来,技术债务逐渐增加,并且必然存在潜在的问题,如果使用的是旧版本的 Rails,工程师将不得不添加更多的猴子补丁(monkey-patch)或实现上游已经实现的功能。
最后,当我们开始时,并不清楚需要哪些资源来支持升级,因为我们大多数人之前从未进行过Rails 的升级,所以我们一直在学习。该项目最初由 1 名全职工程师和一小批志愿者组成,我们将该团队培养成 4 名全职工程师和志愿者。每个版本的升级都意味着我们会学到更多,下一个版本的升级速度会更快。
通过这项工作,我们学到了一些重要的经验,我们希望下一次升级更容易:
- 早升级,经常升级(Upgrade early and upgrade often)
- 保持升级基础架构(Keep upgrade infrastructure in place)
- 使用上游提供的工具,而不是自己造轮子(Upstream your tooling instead of rolling your own.)
- 避免使用私有 api(Avoid using private API’s in your frameworks)
- 解决技术债(Address technical debt often)
- 增量升级(Do incremental upgrades)
- Keep up the momentum.
- Expect things to break.
原文:Upgrading GitHub from Rails 3.2 to 5.2
扩展阅读:
- 8102 年资深程序员一定要 follow 的 Python 博客/网站 Top 10
- 后端开发人员的路线图 2018 版
- 使用 Python 和 Click 编写命令行应用程序
- Python 3.7 将引入 dataclass 装饰器
- 后端开发人员的路线图 2018 版
极光日报,极光开发者旗下媒体。
每天导读三篇英文技术文章
发布于 2018-09-29 10:23