17 puan yazan xguru 2023-12-06 | 5 yorum | WhatsApp'ta paylaş
  • 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

 
yangeok 2023-12-11

harika

 
eususu 2023-12-06

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. :)

 
galadbran 2023-12-07

Büyük depolarda kullanıldığında hız konusunda sorun yaşadınız mı acaba? Merak ediyorum ^^

 
quack337 2023-12-06

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.

 
kuroneko 2023-12-06

Ooo... Git ile çalışırken çeşitli komutlar kullanmaktansa daha pratik görünüyor.