- Eine Sprache, mit der sich
.git-Dateien mit einer SQL-ähnlichen Syntax statt einer DB abfragen lassen
- Eine kleine Engine führt Echtzeitabfragen für Repos ohne separate DB oder Konvertierung aus
- Unterstützt den Großteil der SQL-Syntax, einschließlich Gruppierung, Sortierung und Aggregation
- Rust Open Source
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 Kommentare
awesome
Schade, dass man nach der Installation keine Abfragen direkt in der CLI eingeben konnte.
Wenn man das Repository jedoch direkt baut und verwendet, kann man die Option nutzen, um Abfragen direkt abzusetzen.
Anscheinend soll das wohl in der nächsten Version hinzugefügt werden.
cargo run -- -q "SELECT * FROM tags"
So kann man es verwenden.
Jetzt kann man es für DevOps-Aufgaben einsetzen. :)
Wie ist die Geschwindigkeit bei der Verwendung in großen Repositories? Würde mich interessieren ^^
Oh! Ich parse immer mal wieder die Ausgabe von
git log --numstat, packe sie in eine DB und analysiere sie dann per SQL – eine lästige Arbeit, aber damit wäre das wohl auf einen Schlag erledigt.Oh … das wirkt vielleicht praktischer, als bei der Arbeit mit Git ständig dieses und jenes an Befehlen zu verwenden.