17 puntos por xguru 2023-12-06 | 5 comentarios | Compartir por WhatsApp
  • Un lenguaje que permite hacer consultas sobre archivos .git con una sintaxis similar a SQL, en lugar de una base de datos
  • Un motor pequeño realiza consultas en tiempo real sobre el repositorio sin necesidad de una base de datos separada ni conversiones
  • Soporta la mayor parte de la sintaxis de SQL (incluyendo agrupación, ordenamiento y agregación)
  • Open source en 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 comentarios

 
yangeok 2023-12-11

increíble

 
eususu 2023-12-06

Lo instalé y me dio pena que no se pudiera ingresar consultas directamente desde la CLI.
Pero si compilas y usas el repositorio directamente, sí puedes usar una opción para lanzar consultas de forma directa.

Parece que probablemente lo agregarán en la próxima versión.

cargo run -- -q "SELECT * FROM tags"

Se usa de esta manera.
Ahora se puede usar para tareas de DevOps. :)

 
galadbran 2023-12-07

Cuando se usa en repositorios grandes, ¿la velocidad les ha parecido aceptable? Me da curiosidad ^^

 
quack337 2023-12-06

¡Oh! A menudo hago la tediosa tarea de parsear la salida de git log --numstat, meterla en una base de datos y analizarla con SQL; parece que con esto ya bastará.

 
kuroneko 2023-12-06

Oh... también parece más cómodo que estar usando varias órdenes distintas cuando trabajas con Git.