Debian 19岁:在git上回顾代码的生命之树
| 2012-08-20 07:39
2012年8月16日,Debian迎来了自己的19岁生日。一般而言,技术控们庆祝项目生日的做法就是聚在一起讨论分享,吃个蛋糕什么的(比如去年的Linux 20周年庆)。今年,Debian的开发者之一Raphaël Hertzog用了另一个庆祝方式:做视频。
Raphaël Hertzog在1998年成为了一名Debian Developer,现在也同时运作着一个属于自己的公司。今天这段视频有关 dpkg :这是Debian生态环境下的安装包体系。
以下的数字统计来自dpkg的git仓库,到目前为止的commit编号已经到达 9a06920 。当然,git 仓库是2007年建立的,里面只记录了dpkg的很小一部分历史,不过Raphaël尝试对git的记录和1996年到2007年这段期间的记录进行了一 次整合。
总体来说,1996年4月到2012年8月的这段时间:
146人为dpkg贡献过代码(结果来自 git log --pretty='%aN'|sort -u|wc -l)
commit总数为6948个(结果来自 git log --pretty='%aN'|sort -u|wc -l)
添加/修改过 3133612 行代码(结果来自 git log --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/;')
目前,dpkg源代码树一共包含 28303 行C代码,14956 行Perl代码,6984行shell代码(数据来自David A. Wheeler的SLOCCount),并且被翻译成了40种语言(虽然大部分翻译都是不完整的)
历史上的5个贡献代码最多的开发者(结果来自 git log --pretty='%aN'|sort| uniq -c|sort -k1 -n -r|head -n 5):
Guillem Jover, 2663 commits
Raphaël Hertzog, 993 commits
Wichert Akkerman, 682 commits
Christian Perrier, 368 commits
Adam Heath, 342 commits
不过,以上的数据并不具备完全的代表性,因为还有很多人,比如Ian Jackson(最初用C重写dpkg的作者),Scott James Remnant(在导入tarball之后会发现他曾经活跃过很长一段时间)。每个 tarball 被视为一个commit,不过往往包含不止一处的更新。
作为Linux领域的鼻祖之一,Debian的成长其实也是很多开源社区成长的一个缩影。而观看这段代码树的成长历程,让人不禁开始怀疑,这些机器与代码组成的系统,是否早已有了自己的生命。
总之,Debian,祝你19岁生日快乐!