- SQL'e benzer sözdizimiyle, veritabanı yerine
.git dosyaları üzerinde sorgu yapılabilen bir dil
- Küçük bir motor, ayrı bir veritabanı veya dönüşüm olmadan repo üzerinde gerçek zamanlı sorgular çalıştırır
- SQL'in çoğu sözdizimini destekler (gruplama, sıralama, toplulaştırma dahil)
- Rust ile yazılmış açık kaynak
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 yorum
harika
Kurup, CLI üzerinden doğrudan sorgu giremiyor olmak oldu.
Ama depoyu doğrudan derleyip kullanırsanız, sorguyu doğrudan gönderme seçeneğini kullanabiliyorsunuz.
Sanırım bir sonraki sürüme eklenecek.
cargo run -- -q "SELECT * FROM tags"
Bu şekilde kullanabilirsiniz.
Artık DevOps işlerinde kullanabilirsiniz. :)
Büyük depolarda kullanıldığında hız konusunda sorun yaşadınız mı acaba? Merak ediyorum ^^
Ah!
git log --numstatçıktısını parse edip DB'ye koyup SQL'le analiz etme gibi can sıkıcı işleri ara sıra yapıyorum; sanırım bu tek başına yeterli olacak.Ooo... Git ile çalışırken çeşitli komutlar kullanmaktansa daha pratik görünüyor.