Google如何管理20亿行代码

作者:华省省 , 分类:好文分享 , 浏览:23987 , 评论:0

  《Wired》今天一篇文章谈到Google的代码量已达到20亿行,并简单介绍了Google是如何管理这些代码的。

  

  这20亿行代码,涉及搜索、Gmail、文档、地图、YouTube、Google+等绝大多数Google提供的服务,存储在“一个”代码仓库中,两万五千名Google工程师都可以访问——这可能是世界上最大的单一代码库。只有几个例外:涉及机要信息的代码,如PageRank算法,或者相对独立的项目,如Android和Chrome系统储存在其他单独代码库中。工程师之间可以方便的共享代码——这意味着所有新项目和功能都能利用之前已经写好的代码——20亿行已经几乎无所不包了,而且一处改进,所有相关项目都能受益。

  

  20亿行是什么概念?14年前,Windows XP发布时,包含4500万行代码——Google的代码数量,约为40多个XP。

  

  Google使用一个称为Piper的系统管理这个巨大的代码仓库——这套系统运行在10个不同的数据中心之上,管理的数据量约为85TB,Google工程师每天会进行45000次commit。这又是什么概念?相当于Google工程师每周就重写了一次Linux。

  

  不仅如此,这套从前任Perforce演化而来的系统,还要帮助人类工程师打理各种琐碎的代码修改和提交工作,例如检查Bug和清理用不到的代码,生成必要的配置文件等等——维护代码库健康的工作不仅是工程师在做。

  

  此外,Google正与Facebook合作,计划将类似的强大代码管理工具提供给外界,让公司之外的所有工程师都能受益。不过这套系统并非基于Git,而是Mercurial。当这套系统公之于众时,GitHub会受什么影响?

  

  其实不仅Google的代码庞大复杂至此,微软也毫不逊色。Hacker News上就有微软工程师讲到了自己了解的数据:仅Windows build system每天在微软内部网络产生的交换数据量,就相当于Netflix所有电影总和的数倍!


版权说明:如非注明,本站文章均为 华省省 (QQ:283365526)原创,转载请注明出处和附带本文链接。

发表评论

必填

选填

选填

◎参与讨论,发表您的看法、交流您的观点,加我咱俩聊聊QQ:283365526

额 本文暂时没人评论 来添加一个吧!加我QQ:283365526咱俩聊聊,说不定工作上能帮到你
热门文章
站长新闻
IT创业
好文分享
热评文章
华省省博客