Git hooks
เป็นสคริปต์แบบกำหนดเองที่ทำงานโดยอัตโนมัติใน Git เมื่อมีเหตุการณ์บางอย่างเกิดขึ้น เช่น before commit, after commit, before push
และอื่น ๆ เมื่อใช้ Git hooks
คุณสามารถทำงานอัตโนมัติและใช้กฎที่กำหนดเองในเวิร์กโฟลว์ของคุณ
มีสองประเภท Git hooks
:
Client-side hooks
รันบนเครื่องโลคัลของคุณเมื่อโต้ตอบกับไฟล์ Git repository
.
ตัวอย่าง:
pre-commit
: ทำงานก่อนที่จะกระทำ คุณสามารถใช้เพื่อตรวจสอบโค้ด ตรวจสอบมาตรฐานการเข้ารหัส หรือจัดรูปแบบ
pre-push
: วิ่งก่อนผลัก คุณสามารถใช้มันเพื่อเรียกใช้การทดสอบหน่วยหรือตรวจสอบให้แน่ใจว่ารหัสเป็นไปตามมาตรฐานและกฎของโครงการ
Server-side hooks
เรียกใช้บนเซิร์ฟเวอร์ระยะไกลเมื่อรับงานจากเครื่องภายใน
ตัวอย่าง:
pre-receive
: รันก่อนที่จะได้รับการคอมมิชชันจากเครื่องโลคัล คุณสามารถใช้เพื่อตรวจสอบว่าคอมมิชชันตรงตามเกณฑ์ที่กำหนดก่อนที่จะยอมรับหรือไม่
post-receive
: รันหลังจากได้รับการคอมมิตจากเครื่องโลคัล คุณสามารถใช้สำหรับการแจ้งเตือน การปรับใช้ หรือการดำเนินการอื่นๆ หลังจากได้รับการคอมมิต
ในการใช้งาน Git hooks
คุณต้องสร้างเชลล์สคริปต์แบบกำหนดเองและวางไว้ใน .git/hooks
ไดเร็กทอรีใน Git repository
. ตรวจสอบให้แน่ใจว่าคุณได้ให้สิทธิ์ในการดำเนินการกับสคริปต์แล้ว
เมื่อใช้ Git hooks
คุณสามารถทำงานอัตโนมัติ เช่น การตรวจสอบซอร์สโค้ด การตรวจสอบมาตรฐานการเข้ารหัส การจัดรูปแบบ การแจ้งเตือน และการปรับใช้อัตโนมัติ สิ่งนี้ช่วยให้แน่ใจว่าเวิร์กโฟลว์ของคุณเป็นไปตามกฎและบรรลุความสอดคล้องในการจัดการซอร์สโค้ด