17 คะแนน โดย xguru 2023-12-06 | 5 ความคิดเห็น | แชร์ทาง WhatsApp
  • ภาษาที่สามารถใช้คิวรีกับไฟล์ .git ได้ด้วยไวยากรณ์คล้าย SQL แทนการใช้กับ DB
  • เอนจินขนาดเล็กที่ทำการคิวรีแบบเรียลไทม์กับรีโปได้โดยไม่ต้องมี DB แยกหรือการแปลงข้อมูล
  • รองรับไวยากรณ์ส่วนใหญ่ของ SQL (รวมถึง grouping, sorting, aggregation)
  • โอเพนซอร์สด้วย 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 ความคิดเห็น

 
yangeok 2023-12-11

ยอดเยี่ยม

 
eususu 2023-12-06

ติดตั้งแล้วรู้สึกเสียดายที่ไม่สามารถพิมพ์คิวรีได้โดยตรงจาก CLI
แต่ถ้าบิลด์จากรีโพซิทอรีมาใช้เอง ก็จะสามารถใช้ตัวเลือกสำหรับส่งคิวรีโดยตรงได้

ดูเหมือนว่าน่าจะถูกเพิ่มเข้ามาในเวอร์ชันถัดไป

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

สามารถใช้งานได้ในลักษณะนี้
ตอนนี้นำไปใช้กับงาน DevOps ได้แล้วครับ :)

 
galadbran 2023-12-07

ถ้าใช้กับรีโพซิทอรีขนาดใหญ่ ความเร็วโอเคไหมครับ? สงสัยเลย ^^

 
quack337 2023-12-06

โอ้! ปกติผมต้องคอยทำงานจุกจิกอย่างการ parse เอาต์พุต git log --numstat แล้วใส่ลง DB เพื่อวิเคราะห์ด้วย SQL อยู่บ่อย ๆ แต่ถ้ามีตัวนี้ก็น่าจะจบเลยนะครับ

 
kuroneko 2023-12-06

โอ... เวลาทำงานกับ Git มันก็ดูสะดวกกว่าการต้องใช้คำสั่งนู่นนี่หลายคำสั่งอยู่นะครับ