Branch - trabnm1313/SDTP GitHub Wiki
Branching
คือการแตกกิ่งสาขาออกจาก master หรือ main โดยทั้งนี้
โดยเราจะมี Git Flow ประมาณนี้
Branch Master (Main)
เป็น branch ที่ถูกสร้างขึ้นเป็นตัวเริ่มต้นอยู่แล้ว ไม่จำเป็นต้องสร้างขึ้นเอง และเป็น branch ที่ใช้สำหรับเก็บ project ตอนเป็น product เราก็ setting ทุกอย่างให้พร้อมก่อนที่จะเอาเข้ามาใน branch นี้ เพราะ branch นี้เราจะใช้สำหรับ deploy ขึ้น server เลย
ในรูปนี้จะเห็นว่ามี Branch Main ที่ยังไม่ได้ Pull origin คือเราจำเป็นจะต้อง pull origin ก่อนเพื่ออัพเดต branch main
ในรูปนี้จะขึ้นเมื่อกด Pull Origin ไปแล้วจะขึ้น Fetch Origin ก็คือการอัพเดต branch main เรียบร้อย
Branch Develop (Dev)
เป็น branch ที่แตกออกจาก branch master อีกที โดยเราจะให้ branch นี้ไว้สำหรับพัฒนาโปรแกรม เมื่อเสร็จแล้วมาเก็บในนี้ เพื่อลอง test กันก่อนว่ามี error หรือ bug ไหม ถ้ามีเราก็แก้ไขในส่วนนี้ก่อน ส่วนมากจะเกิด pull request ที่นี่ เพราะเรามองกิ่งนี้เป็นกิ่งหลักในการทำงานร่วมกันกับทีม
ในรูปนี้จะเป็นการสร้าง Branch Dev เพื่อใช้ในการเป็นกิ่งหลักในการทำงาน
ในรูปนี้จะเห็นว่าต้อง publish branch เพื่อเป็นการสร้าง branch ขึ้น GitHub
เมื่อทำการ Publish เสร็จสิ้นก็จะเห็นว่ามี branch Dev ที่เพิ่มมา
Branch Features
เป็น branch ที่แตกออกจาก branch develop เท่านั้น ซึ่ง branch features นั้นจะเอาไว้ให้ นักพัฒนาของเราพัฒนา feature แต่ละส่วน โดยเราจะแบ่งงานอย่างชัดเจน เช่น อย่างเราจะทำ ระบบสุ่มอาหารและร้านค้า เราก็จะแบ่งออกเป็นงานเลย ก็จะมี Random Menu, Get Food, Order Food, Search recipe ซึ่งเวลาเราแยก branch ออกเราก็แยกเป็น feature ไปเลย เช่น Features/Random Menu อย่างนี้เป็นต้น ซึ่งเมื่อทำ Features นั้น ๆ เสร็จเรียบร้อยจะทำการ merge code เข้า branch dev เพื่อการ test และอัปเดต feature ของโปรแกรม
ในรูปนี้ก็จะเป็นการสร้าง branch feature เพื่อใช้ในการแยกส่วนการทำงานในแต่ละ Feature
ในรูปนี้ก็เหมือนกัน จะเห็นว่าต้อง publish branch เพื่อเป็นการสร้าง branch นั้น ๆ ขึ้น GitHub
เมื่อทำการ Publish เสร็จสิ้น ก็จะเห็นว่ามี branch Features-Random ขึ้นมา