当您可以使用动态显示项目内部的动向和活动时,为何还要满足于使用枯燥的数字和静态图表来描述您的开源项目?Gource 是一个惊人且灵活的工具,可用于使用人们喜爱的视频可视化方式来显示来自您仓库的活动。Gource 可以根据 GNU 通用公共许可证(第 3 版或更高版本)的条款进行再分发和修改。以下是一些其他人如何使用 Gource 的有趣视频,这些视频可能有助于您思考如何使用它
Yum Gource 可视化
Yum Gource 可视化视频是为了纪念 Seth Vidal,他是 Yum 项目的首席开发人员和 Fedora 的长期贡献者,在他骑自行车时被肇事逃逸的司机撞死后不久。Seth 对 Yum 的贡献以蓝色显示,而其他人的贡献则以白色显示。
Linux 内核开发
Linux 内核开发,1991-2015 展示了 Gource 如何帮助您可视化任何开源项目的完整开发历史(在本例中为 Linux 内核)。
人口动态
1970-2010 年人口动态 提供了人口动态的可视化。
任何灵活且可自定义的工具都带有一系列令人眼花缭乱的选项和配置。例如,我使用以下命令生成了 MailingListStats (mlstats) 仓库的可视化,该仓库来自 Metrics Grimoire 工具套件
$ gource -f --logo images/bitergia_logo_sm.png --title "MailingListStats AKA mlstats" --key --start-date '2014-01-01' --user-image-dir images -a 1 -s .05 --path ../MailingListStats
这是使用这些选项生成的 视频
选项详情
- --path /path/to/repo(或省略并在仓库目录的顶层运行 Gource)
- -f 显示全屏
- --logo images/bitergia_logo_sm.png
- --title "MailingListStats AKA mlstats"
- --key(显示文件类型的颜色键)
- --start-date '2014-05-01'
- --user-image-dir images(包含用户 .jpg 或 .png 图像的目录 - ‘Full Name.png' 用于头像)
- -a 1(如果在 x 秒内没有任何操作,则自动跳到下一个条目 – 默认值为 3)
- -s .05(每秒天数的速度 – 默认值为 10)
Gource 还可以使用自定义日志格式来显示非仓库信息(错误跟踪器或邮件列表)。
例如,这是我如何使用 Gource 的自定义日志格式可视化邮件列表的方法
- 在由 mlstats 创建的数据库上运行查询,其中包含来自 Linux 内核邮件列表之一的所有消息。
- 收集有关每封邮件列表帖子的数据,包括发布消息的人,以及如果是回复,他们回复的用户(
M
- 通过回复修改线程)。否则,将其标记为新消息(A
- 添加新线程) - 将电子邮件剥离为用户名(
@example.com
之前的所有内容),以便为用户提供更短的标识符,这对于可视化效果更好。 - 将输出格式化为一个名为 gource_output.log 的文件,这是一个不错的管道分隔的 Gource 自定义日志格式,按时间排序,格式如下:
unixtime|user-email_sender|A|new
- 运行 gource
$ gource -i 5 --max-user-speed 100 -a 1 --highlight-users gource_output.log
- 使用的选项
-i 5
文件保持空闲的时间(默认值为 0)。这允许被回复的人在 5 秒后消失,以清理一下并使其更具可读性。--max-user-speed 100
用户每秒可以移动的速度(默认值:500)。我将其降低到 100,以便更容易看到用户。-a 1
如果在若干秒内没有任何操作,则自动跳到下一个条目(默认值:3),稍微加快了一点速度。--highlight-users
使发送电子邮件的人的用户名保持不消失。我本希望文件名(即被回复的人)也能如此,但似乎找不到为此设置的选项。
要了解有关 Gource 的更多信息,请查看该项目的 Github 页面,或观看 Dawn 在多伦多 LinuxCon 上的演讲。
本文提供了 Dawn 将在她在 8 月 23 日星期二举行的 LinuxCon 演讲 使用 Gource 可视化您的代码仓库及更多内容 中包含的示例。在 LinuxCon 上,她将深入探讨更多选项和创造性方法,以将 Gource 用于典型的源代码可视化之外的用途。与会者应该从她的演讲中获得关于如何创建精彩视频的想法和技巧,这些视频展示了开源项目和社区内部的活动。
1 条评论