内容简介:对了,这是一个 Go 语言项目。文末
关注公众号 “ OpenSourceDaily ” ,每天推荐给你优秀开源项目
大家好,我是欧盆索思(opensource),每天为你带来优秀的开源项目!
SQL 应该是每个服务端开发必备的技能,同时 Git 也成为了每个开发人员的必备工具。今天这个项目的作者挺有创业,将两者结合起来,通过写 SQL 语句来查询 Git 仓库的相关信息。例如返回当前已检出 branch/commit 的历史记录中的所有提交,语句是: SELECT * FROM commits 。
项目地址:https://github.com/augmentable-dev/gitqlite,Star 数 778,进入了 GitHub 趋势榜。
它通过 SQLite 虚拟表并使用 go-git 来实现的。
安装:
go install -v -tags=sqlite_vtable github.com/augmentable-dev/gitqlite
你也可以使用 Docker:
docker build -t gitqlite:latest .
使用示例:
gitqlite "SELECT * FROM commits"
一个更复杂的例子:
SELECT author_email, count(*) FROM commits GROUP BY author_email ORDER BY count(*) DESC
它返回每个作者的提交计数(电子邮件标识作者)。
相关提交、文件、refs 对应的表定义如下:
commits:
| Column | Type |
|---|---|
| id | TEXT |
| message | TEXT |
| summary | TEXT |
| author_name | TEXT |
| author_email | TEXT |
| author_when | DATETIME |
| committer_name | TEXT |
| committer_email | TEXT |
| committer_when | DATETIME |
| parent_id | TEXT |
| parent_count | INT |
| tree_id | TEXT |
| additions | INT |
| deletions | INT |
files:
| Column | Type |
|---|---|
| commit_id | TEXT |
| tree_id | TEXT |
| name | TEXT |
| mode | TEXT |
| type | TEXT |
| contents | TEXT |
refs:
| Column | Type |
|---|---|
| name | TEXT |
| type | TEXT |
| hash | TEXT |
对了,这是一个 Go 语言项目。
文末 「阅读原文」 可直达项目首页。
今天的项目大家觉得怎么样吗?如果你喜欢,请在文章底部留言、点赞或关注转发,你的支持就是我持续更新的最大动力!
推荐阅读
OpenSourceDaily - 送给爱开源的你
Git · GitHub · GitLab · Gitee
以上所述就是小编给大家介绍的《香!一款用 SQL 方式查询 Git 仓库的开源项目进入 GitHub 趋势榜》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Ajax修炼之道
(美)哥特兰、高伯瑞斯、艾米亚 / 徐锋,胡冰 / 电子工业出版社 / 2006-4 / 29.8
Ajax将静态Web页面转变为充满交互的应用。现在您不需要牺牲Web应用程序部署的简单性,就可以将“胖”客户端应用程序部署到客户端。不过对于很多人业说,Ajax看起来很难。这就是我们撰写本书的原因。作为实践的指导,本书揭开了Ajax神秘的面纱,教您如何以简单的方式使用Ajax。本书内容覆盖了DHTML、Javascript和闻名已久的XmlHttp Request回调技术的基础知识。您将了解如何将......一起来看看 《Ajax修炼之道》 这本书的介绍吧!