ใช้ git hook เพื่อ deploy code

บอกลาวิธี deploy code แบบ FTP สักที ไหนๆ ก็มี git เข้ามาแล้วมาใช้ git hook ให้เป็นประโยชน์ดีกว่า ซึ่ง git hook ตัวนี้มีชื่อว่า post-receive จะทำหน้าที่คือ เมื่อ push เข้า origin master เมื่อไร code จะถูก update อัตโนมัติ และคำสั่งภายใน ./git/hooks/post-receive ก็จะถูกรัน

เริ่มกันเลยดีกว่า
1. ทำการ remote ไปยัง server ของเรา

ssh ball@engineerball.com
mkdir -p public_html/engineerball.com
cd public_html/engineerball.com
git init
git config core.worktree /home/ball/public_html/engineerball.com
git config receive.denycurrentbranch ignore

 

ทำการสร้างไฟล์ post-receive

cat >> .git/hooks/post-receive << END
git checkout -f
touch restart.txt
END
chmod +x .git/hooks/post-receive

 

2. ที่เครื่อง local ของเราเองให้ทำการ add branch ของ webserver เข้าไป

git remote add origin ssh://ball@engineerball.com/home/ball/public_html/engineerball.com

3. เสร็จแล้วลองทดสอบ push file
ที่เครื่อง local

cd /home/ball/mycode
touch ball.txt
git add . 
git commit -m "Add ball.txt for test hook poset-receive"
git push origin master

 

4. ตามไปดูทีีเครื่อง server

ssh ball@engineerball.com
cd public_html/engineerball.com
ls -la ball.txt
ls -la restart.txt

 

ก็จะเห็นไฟล์ที่เกิดขึ้นมาใหม่ ที่เราเพิ่งทำการ เพิ่มเมื่อกี้ครับ ง่ายดาย

 

ball Written by:

Teerapat Khunpech Live, Tech, Beers, Bike, Cafe Racer, Docker, Devops, Eco-System