- Uma linguagem que permite consultar arquivos
.git com uma sintaxe semelhante a SQL, em vez de um banco de dados
- Um mecanismo pequeno realiza consultas em tempo real sobre o repositório sem precisar de banco de dados separado ou conversão
- Suporta a maior parte da sintaxe de SQL (incluindo agrupamento, ordenação e agregação)
- Open source em Rust
SELECT DISTINCT title AS tt FROM commits
SELECT name, COUNT(name) AS commit_num FROM commits GROUP BY name ORDER BY commit_num DESC LIMIT 10
SELECT commit_count FROM branches WHERE commit_count BETWEEN 0 .. 10
SELECT * FROM refs WHERE type = "branch"
SELECT * FROM refs ORDER BY type
SELECT * FROM commits
SELECT name, email FROM commits
SELECT name, email FROM commits ORDER BY name DESC, email ASC
SELECT name, email FROM commits WHERE name LIKE "%gmail%" ORDER BY name
SELECT * FROM commits WHERE LOWER(name) = "amrdeveloper"
SELECT name FROM commits GROUP By name
SELECT name FROM commits GROUP By name having name = "AmrDeveloper"
SELECT * FROM branches
SELECT * FROM branches WHERE is_head = true
SELECT name, LEN(name) FROM branches
SELECT * FROM tags
SELECT * FROM tags OFFSET 1 LIMIT 1
5 comentários
incrível
Instalei, mas fiquei decepcionado porque não dava para inserir consultas diretamente pela CLI.
Mas, se você compilar e usar o repositório diretamente, dá para usar a opção de executar consultas manualmente.
Parece que isso deve ser adicionado na próxima versão.
cargo run -- -q "SELECT * FROM tags"
É só usar assim.
Agora dá para usar em tarefas de DevOps. :)
Ao usar em repositórios grandes, a velocidade fica boa? Fiquei curioso ^^
Nossa! Eu costumo fazer de vez em quando o trabalho chato de analisar a saída de
git log --numstat, jogar num banco de dados e analisar com SQL, mas com isso aqui parece que dá para resolver tudo de uma vez.Oh... também parece mais prático do que ficar usando vários comandos diferentes ao trabalhar com Git.