公众号关注 “GitHubDaily”

设为 “星标”,每天带你逛 GitHub!

转自量子位,作者鱼羊

如此华丽的绽放,莫非是一场动画烟火秀?

非也,这其实是 GitLab 社区版的进化史,7 年间 82000 次 commit,尽皆在 2.5 分钟的视频内展现。

Python 的演化历史更是鹅妹子嘤。

一开始,Guido 化身一个白色的小人,满屏幕风风火火地释放 “光束”,让 “Python 树” 迅速长成了茁壮发育的模样。

而从 92 年开始,新的角色出现在了 Python 的成长史中。

Python 社区日益壮大,到了 2010 年,“Python 树” 已经成长为参天巨树,像炫目的烟花一样满屏绽放。

是不是仿佛见证了一个新世界的诞生?而这样让人心醉的作品,其实全部出自一款软件版本控制可视化工具之后,它的名字叫 Gource

将软件项目以动画树的形式展现,根目录为中心,目录为分支,文件为叶子,当一颗 “树” 华丽丽地舒展开,减去旧枝、添加新叶,也就意味着,开发人员为这一软件项目做出的贡献越来越丰富。

并且,这棵 “树” 不仅能展示软件版本的更迭,还可以显示有多少开发者参与其中。

心动了吗?其实,在 Gource 的帮助下,你自己的项目,也能如此可视化。想体验创世的感觉?那么一起来看看,Gource 这一可视化神器该怎么用吧。

Gource 怎么用

Gource 支持 Git,Mercurial,Bazaar 和 SVN 等代码管理系统,还可以解析多个由第三方工具为 CVS 存储库生成的日志。

使用方法也并不复杂。

在 Windows 系统下,直接将 Gource 安装到本地,通过 cmd(命令提示符)进入本地 git 文件夹,然后执行:

gource

视频就能自动生成了。

Linux 和 Mac 系统也同样支持,不过需要下载源码,自己编译。

支持 linux、Mac

Gource 还有丰富的交互式控件和命令行选项。

比如设置屏幕分辨率:

gource -f -1280×720

而在相机控制上,Gource 提供了两种拍照模式:

  • overview:将整个存储库放在视图中。

  • track:跟踪当前活动用户或所选用户。

gource —camera-mode track

此外,通过鼠标和键盘,还可以控制镜头平移、回转、放大。

在时间控制方面,可以使用 --start-position 和 --stop-position 指定要显示的项目历史时段。

另外,在创造自己的可视化文件时,你还可以加上 BGM,让音乐渲染情节的发展:

能怎么用

那么,用直观的方式展现软件项目的更迭历史,除了好看,还有什么用处吗?

Hacker News 的网友们头脑风暴了一番。

有人说:这样出色的可视化,能够清楚地展示人们是怎样为开源软件做出贡献的。

大家都知道在开源社区中,协作会催生令人惊奇的结果。但没有什么比可视化更能直观地展现协作产生的能量。

还有网友提到了一种非常有情怀的用法:

在同事离职的时候,把 Ta 在公司期间所做的所有贡献可视化,并在告别会上展示出来。

当然,用它来了解一下公司的代码库是怎样生长的,似乎也是不错的选择。

我曾经在公司年仅一岁的代码库上运行 Gource。这个小家伙每个月都在被重写。新的集群不断成长也不断被拆除。

你又有什么样大胆的想法呢?

One More Thing

Gource 还有个兄弟产品,是网络流量可视化工具 Logstalgia

在 Logstalgia 的作品中,Web 服务器和永无休止的访问请求打起了乒乓球赛。服务器击中彩球,请求成功;服务器没接住的球,就意味着请求失败(如 404)。

这画面我简直可以循环 100 遍。

配合背景音乐食用效果更佳哟:

传送门

Gource 官网:
https://gource.io/

Logstalgia 官网:
https://logstalgia.io/

推荐阅读:
“我的名片可以运行 Linux”

2019 年赚钱最多的 13 个技术岗位

GitHub 热榜第一:最全中华古诗词数据库,收录30多万诗词

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐