Git 3.0 จะใช้ main เป็นบรাঞ্চเริ่มต้น
(thoughtbot.com)- ตั้งแต่ Git 3.0 เป็นต้นไป เมื่อสร้างรีโพซิทอรีใหม่ ระบบจะตั้งค่าบรাঞ্চเริ่มต้นเป็น
mainโดยอัตโนมัติ - การเปลี่ยนแปลงครั้งนี้ถูกระบุไว้ใน Git 2.52 patch notes โดยตั้งแต่ Git 3.0 คำสั่ง
git initจะใช้mainแทนmaster - Software Freedom Conservancy ได้ประกาศแผนเปลี่ยนชื่อบรานช์เริ่มต้นในเดือนมิถุนายน 2020 และ GitHub เริ่มนำไปใช้ในเดือนตุลาคมของปีเดียวกัน
- Git 3.0 ยังไม่มีการกำหนดวันเปิดตัวอย่างเป็นทางการ และคาดว่าจะเผยแพร่ราว ปลายปี 2026
- เวอร์ชันใหม่นี้มีการเปลี่ยนแปลงสำคัญ เช่น การเปลี่ยนไปใช้แฮช SHA-256, การปรับปรุงรูปแบบการจัดเก็บ, และ กระบวนการบิลด์ที่ผสานรวม Rust
การเปลี่ยนบรานช์เริ่มต้นใน Git 3.0
- ตั้งแต่ Git 3.0 เป็นต้นไป เมื่อสร้างรีโพซิทอรีใหม่ บรานช์เริ่มต้นจะถูกตั้งเป็น
mainโดยอัตโนมัติ- ผู้ใช้ไม่จำเป็นต้องกำหนดบรานช์เริ่มต้นด้วยตนเองอีกต่อไป
- ใน Git 2.52 patch notes มีข้อความว่า “ตั้งแต่ Git 3.0 เป็นต้นไป คำสั่ง
git initจะใช้mainเป็นบรานช์เริ่มต้นแทนmaster” - การเปลี่ยนแปลงนี้ถือเป็น การเปลี่ยนทิศทางอย่างเป็นทางการของโครงการ Git โดยแทนที่ชื่อ
masterเดิม
ภูมิหลังและความเคลื่อนไหวที่เกี่ยวข้อง
- Software Freedom Conservancy ประกาศแผนเปลี่ยนชื่อบรานช์เริ่มต้นของ Git เมื่อวันที่ 23 มิถุนายน 2020
- GitHub เปลี่ยนบรานช์เริ่มต้นของรีโพซิทอรีใหม่เป็น
mainตั้งแต่วันที่ 1 ตุลาคมของปีเดียวกัน - การเปลี่ยนแปลงเหล่านี้นำไปสู่การใช้ ชื่อบรานช์มาตรฐาน ทั่วทั้งระบบนิเวศของ Git
กำหนดการเปิดตัว Git 3.0
- ยังไม่มีการยืนยันวันเปิดตัวอย่างเป็นทางการของ Git 3.0
- ตามรายงานของ Phoronix คาดว่าจะเปิดตัวราวปลายปี 2026
การเปลี่ยนแปลงทางเทคนิคสำคัญใน Git 3.0
- ฟังก์ชันแฮชพื้นฐานจะเปลี่ยนจาก SHA-1 เป็น SHA-256 เพื่อเพิ่มความปลอดภัย
- รูปแบบการจัดเก็บได้รับการปรับปรุง ทำให้ประสิทธิภาพและความเข้ากันได้บน macOS และ Windows ดีขึ้น
- ภาษา Rust ถูกผสานรวมเข้ากับกระบวนการบิลด์ของ Git อย่างเป็นทางการ ซึ่งจะช่วยยกระดับคุณภาพโค้ดและการบำรุงรักษา
13 ความคิดเห็น
แยกจากประเด็นถกเถียงเรื่องความถูกต้องทางการเมือง การที่ทำให้สอดคล้องกับ GitHub ก็ถือเป็นเรื่องที่ดีนะครับ
เพราะ GitHub คงไม่มีทางกลับจาก
mainไปเป็นmasterอีก...ผมกำลังจะเล่นมุกว่า
manก็ใช้งานไม่สะดวกเหมือนกัน งั้นเปลี่ยนเป็นdocกันเถอะ แต่ใน HN มีคนคอมเมนต์ไปแล้วครับ 555ความเห็นจาก Hacker News
พูดตามตรง ส่วนตัวไม่ได้ใส่ใจนัก แต่ตอนนี้ “master” ก็แทบจะหมดบทบาทไปแล้ว
init.defaultBranch = masterได้อยู่git config --global init.defaultBranch masterมีคนสงสัยว่าทำไม “master” ซึ่งเป็น default branch มาตลอด ถึงเพิ่งเปลี่ยนใน 3.0
ฉันชอบตั้ง default branch เป็น
developแล้วค่อยแตกไปที่releaseมากกว่าtrunkมีคนเล่นมุกว่าคำสั่ง “man” ก็ไม่ inclusive เหมือนกัน และที่บริษัทก็มีคนมองเป็นปัญหา
มีคำถามว่าทำไม “Scrum Master” ถึงยังไม่ถูกเปลี่ยน
บางคนวิจารณ์ว่าการเปลี่ยนแปลงแบบนี้คือ การยอมจำนนต่ออุดมการณ์ทางการเมือง
มีการพูดถึงว่า Mercurial ใช้ชื่อ default branch ว่า “default” มาตั้งแต่แรก
บางคนแย้งว่า “master” เป็นคำที่ไม่เหมาะกับ โครงสร้างแบบกระจายศูนย์ ของ Git อยู่แล้ว ดังนั้นในเชิงเทคนิคการเปลี่ยนก็ถือว่าถูกต้อง
มีคนพูดว่า “คนที่ ไม่อดทนอดกลั้นที่สุด ชนะอีกแล้ว” พร้อมประกาศว่าจะใช้ “master” ต่อไป
มีคนบอกว่าในโปรเจกต์ที่ตัวเองสร้าง เขาตั้ง default branch เป็น “develop” มาตลอด และหวังว่าข้อถกเถียงนี้จะจบลงเสียที
ดูเหมือนว่าจะเป็นการตัดสินใจที่ดี
เป็นการตัดสินใจที่ถูกต้องครับ
พูดตรงๆ ว่าผมคิดว่าเหตุผลมันชวนอึ้งอยู่เหมือนกัน แต่ยังไงก็ขอต้อนรับด้วยเหตุผลง่ายๆ ว่ามันเปลี่ยนจาก 6 ตัวอักษรเป็น 4 ตัวอักษร
ถ้าเป็นแบบนี้ แล้ว
orphanจะเอายังไงล่ะ...git 4.0 เปิดตัว - ใช้คำว่า parentally-independent แทน orphan
🤣
ดูเหมือนว่าจะเป็นการเปลี่ยนแปลงที่เหมาะกับยุคสมัยครับ
เปลืองพลังงานไปกับเรื่องไร้สาระจริง ๆ
ข้อเท็จจริงที่ว่าเคยมีระบบทาส มันเกี่ยวอะไรกับคำว่า master slave กันล่ะ
ทัคบกกึมทังเวอร์ชัน IT