เชื่อว่าโปรแกรมเมอร์หรือนักพัฒนาซอฟต์แวร์ส่วนใหญ่น่าจะเคยใช้งาน Git สำหรับจัดการโค้ดในโปรเจค ซึ่งปกติการใช้งาน Git นิยมใช้ระบบจากผู้ให้บริการอย่าง GitHub GitLab หรือ Bitbucket โดยตัว Git เองนอกจากจะใช้เก็บโค้ดเป็นเวอร์ชั่นต่างๆ สามารถตรวจสอบ หรือย้อนกลับโค้ดได้แล้ว ยังมีความสามารถอื่นๆ ที่นักพัฒนาสามารถนำมาใช้ประโยชน์ได้อีกหลายอย่าง ในกระทู้นี้จะขอแนะนำการใช้งาน Branch หรือ เรียกว่าการแบ่งโค้ดออกเป็นสาขาย่อยๆ ในโปรเจคเดียว ส่วนใหญ่จะนิยมใช้ตอนที่ต้องการพัฒนา Feature ของโปรเจค โดยระหว่างที่พัฒนาจะมีการเก็บเวอร์ชั่นของโค้ดที่เป็น Feature แต่จะไม่กระทบกับโค้ดหลักของโปรเจค วิธีการเป็นอย่างไรมาดูกันเลย
เครื่องมือที่ใช้ในกระทู้นี้
1. โปรเจคใน GitLab
2. NetBeans หรือใช้ IDE ตามความถนัด เช่น VS Code, Atom, Sublime หรืออื่นๆ
เริ่มต้นเราต้องมีโค้ดหลักในโปรเจคอยู่แล้ว ซึ่งปกติจะมีแค่ Branch เดียว คือ Master สามารถดูชื่อ Branch ได้ในหน้าหลักของโปรเจค
ทีนี้เมื่อเราต้องการเพิ่ม Branch เพื่อแยกเป็นโค้ดสำหรับ Feature ใหม่ ให้คลิกไปที่หน้า Branch ตามภาพ
เมื่อเข้ามาที่หน้า Branch จะสามารถจัดการ เพิ่ม ลบ Branch ได้ ให้คลิกปุ่ม New branch เพื่อสร้างใหม่
ในหน้าฟอร์ม Branch ให้ใส่ชื่อของ Branch ใหม่ (หมายเลข 1) โดยห้ามเว้นวรรค และเลือกดึงโค้ดตั้งต้นจาก Branch ชื่อ Master (หมายเลข 2)
ตอนนี้ในโปรเจคเราจะมี 2 Branch เรียบร้อยแล้ว
เปิดตัว IDE ที่ใช้แก้ไขโค้ดขึ้นมา ถ้ายังไม่ได้เชื่อมกับ Git ให้ Clone โปรเจคลงมาก่อน แต่หากเชื่อมอยู่แล้ว ให้ pull ข้อมูลลงมา โดยคลิกขวาที่ชื่อโปรเจค
ใน Netbeans เมื่อกด pull จะมีหน้าต่างขึ้นมา ให้กด next
ในหน้าถัดมา ให้ทำเครื่องหมายถูกในช่องหมายเลข 1 เพื่อดึง Branch ที่สร้างใหม่ลงมา แล้วกด Finish ตรงหมายเลข 2
เมื่อเราต้องการสลับ Branch ให้คลิกขวาที่โปรเจค เลือกเมนูตามภาพ
จะมีหน้าต่างขึ้นมา ให้เลือก Branch ที่ต้องการ แล้วคลิกปุ่ม Switch เราจะสลับ Branch เรียบร้อยแล้ว
หลังจากสลับ Branch เราสามารถพัฒนาในส่วน Feature ใหม่ และ commit กับ push ตามปกติ โดยโค้ดจะไม่กระทบกับตัว Master
สำหรับการเอา Branch ที่เป็น Feature รวมเข้ากับ Master ให้เข้าไปที่หน้าโปรเจคใน Git ให้กดปุ่ม create merge request ด้านบน จะเป็นการตั้งรายการร้องขอให้รวม Branch ที่เป็น Feature เข้าใน Master
ในหน้าฟอร์ม New Merge Request ระบบจะ default ช่อง Title มาให้อยู่แล้ว และสามารถใส่ Description ได้ รวมถึงกำหนดผู้รับผิดชอบได้ด้วย จากนั้นให้กด Submit merge request
ตอนนี้ระบบของ GitLab จะตั้งรายการมา สถานะเป็น Open เพื่อให้คนในโปรเจคตรวจสอบและพูดคุยกันได้ก่อน ซึ่งถ้าเรียบร้อยแล้วให้กดปุ่ม Merge ได้เลย ตรงนี้สามารถเลือกได้ว่า หลังจาก Merge แล้วจะลบ Branch ที่เป็น Feature หรือจะเก็บไว้
หลังจาก Merge เรียบร้อยแล้ว สถานะจะเปลี่ยนเป็น Merged โค้ดจะถูกรวมไว้ที่ Master แล้ว
สำหรับกระทู้นี้เป็นเพียงวิธีการอย่างง่ายในการใช้งาน Branch เพื่อแบ่งโค้ดในการพัฒนา Feature ย่อยๆ โดยอธิบายตั้งแต่การสร้าง Branch ในโปรเจค การดึงมาใช้ในเครื่องของเรา ในกระทู้จะใช้ IDE เป็นตัว Netbeans ซึ่งสามารถใช้ IDE ตัวอื่นได้ตามความถนัด แต่การทำงานกับ Git ก็จะแตกต่างกันออกไป หรือ หากใครถนัดใช้ Git Command ก็สามารถใช้ได้เช่นกัน นอกจากนี้ในการทำงานจริงตัว Git ยังมีความสามารถอื่นๆ อีกหลายอย่างที่สามารถนำมาใช้ในโปรเจคของเรา โดยสำหรับตัว GitLab สามารถศึกษาเพิ่มเติมได้จาก https://docs.gitlab.com/
การใช้งาน Branch ใน GitLab สำหรับแบ่งโค้ดในการพัฒนา Feature
Moderator: mindphp, ผู้ดูแลกระดาน
- tsukasaz
- PHP VIP Members
- โพสต์: 21993
- ลงทะเบียนเมื่อ: 18/04/2012 9:39 am
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41238
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
Re: การใช้งาน Branch ใน GitLab สำหรับแบ่งโค้ดในการพัฒนา Feature
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
-
โพสต์ใหม่ วิธี Setup SSL ให้กับ GitLab เข้าใช้งาน https ได้ง่ายไม่ต้องแก้ไขโค้ดได้แล้วด้วย GitLab 12
โดย mindphp » 08/09/2020 8:29 pm » ใน Linux - Web Server - 3 ตอบกลับ
- 3579 แสดง
-
โพสต์ล่าสุด โดย mindphp
02/02/2022 11:13 am
-
-
- 3 ตอบกลับ
- 1836 แสดง
-
โพสต์ล่าสุด โดย tsukasaz
02/04/2020 10:50 am
-
-
โพสต์ใหม่ Gitlab เจอปัญหา gitlab Forbidden แล้วเข้าไม่ได้
โดย mindphp » 22/04/2019 11:32 am » ใน Linux - Web Server - 2 ตอบกลับ
- 2481 แสดง
-
โพสต์ล่าสุด โดย mindphp
08/09/2020 8:56 pm
-
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 23