ไม่มีชื่อบทความ
pnpm run prepare คืออะไร
คำสั่ง pnpm run prepare คือการรันสคริปต์ที่ชื่อว่า prepare ที่กำหนดไว้ในไฟล์ package.json ของโปรเจค Node.js
ตัวอย่าง package.json:
"scripts": {
...
"prepare": "husky install"
}
เมื่อใช้คำสั่ง:
pnpm run prepare
ระบบจะเรียกคำสั่งที่กำหนดไว้ในสคริปต์ prepare โดยอัตโนมัติ เช่นในกรณีนี้ คือการรัน husky install
ทำไมถึงต้องใช้ pnpm run prepare ?
1. เพื่อ ติดตั้ง Husky Git Hooks
Husky เป็นเครื่องมือที่ช่วยให้สามารถรันสคริปต์อัตโนมัติตอนที่มีเหตุการณ์สำคัญใน Git เช่น:
- ก่อนที่จะ commit (
pre-commit) - ก่อนที่จะ push (
pre-push) - ตรวจสอบ commit message (
commit-msg)
คำสั่ง husky install จะทำการสร้างและตั้งค่าไฟล์ในโฟลเดอร์ .husky/ และเชื่อมโยงกับโฟลเดอร์ .git/hooks/ เพื่อให้ Git สามารถใช้งาน hooks เหล่านี้ได้จริง
2. ต้องรันหลังจาก clone โปรเจคใหม่
หลังจากโคลน repository หรือถ้ามีการลบโฟลเดอร์ .husky/ หรือ .git/ ออกไป จำเป็นต้องรันคำสั่งนี้ใหม่เสมอเพื่อให้ Git hooks กลับมาทำงานได้
หากไม่รันคำสั่ง pnpm run prepare:
- Git hooks จะไม่ทำงาน
- สคริปต์ที่ใช้ตรวจสอบหรือควบคุมคุณภาพโค้ดจะไม่ทำงานอัตโนมัติ
สรุปสั้นๆ แบบเข้าใจง่าย
pnpm run prepareใช้เพื่อเตรียม Git hooks ผ่าน Husky ให้พร้อมใช้งาน- ควรรันทุกครั้งหลังจากติดตั้ง dependencies (
pnpm install) หรือ clone โปรเจคใหม่ - โดยทั่วไป npm/yarn/pnpm v7+ จะรัน
prepareอัตโนมัติระหว่างติดตั้ง dependencies แต่ควรรันซ้ำเพื่อความแน่ใจหลัง clone โปรเจคใหม่เสมอ
ตัวอย่างการใช้งานจริง
ขั้นตอนที่แนะนำหลังจาก clone โปรเจค:
pnpm install
pnpm run prepare # ติดตั้ง Husky hooks ให้พร้อมใช้งาน
หรือจะกำหนดขั้นตอนนี้เป็นมาตรฐานในการทำงานสำหรับทีมได้เช่นกัน
อธิบายง่ายๆ
"ถ้าอยากให้มีระบบอัตโนมัติในการตรวจสอบโค้ดหรือ commit message ก่อนที่จะ commit หรือ push ขึ้นไปที่ repository ต้องรันคำสั่ง pnpm run prepare หลังจากที่ clone โปรเจคทุกครั้ง"