เวลาที่เราใช้งาน Git เราก็จะแตก Branch กิ่งก้านสาขาออกจาก Branch Main มาเพื่อทดสอบโน่นนี่นั่น (แต่ผมก็ค่อยจะแตก ออกมาจาก main หรอก 😂 ) แต่จะทำยังไงถ้า Branch Main ที่เราแตกออกมามีข้อมูลอัพเดทมาใหม่ วันนี้เราจะมาดูกันว่า เราจะเอาข้อมูล Branch Main มาอัพเดทที่ Branch ที่เราแตกออกมาด้วย จะทำยังไง มาดูกันเลย
Merge
เริ่มจากการ checkout branch ที่เราใช้งานอยู่ ในตัวอย่างที่ผมใช้งานจะเป็น b1
git checkout b1จากนั้นทำการ merge branch main มาที่ branch b1
git merge origin/mainสุดท้ายก็ push ขึ้นไปที่ remote branch ของเรา ก็เป็นอันเสร็จเรียบร้อย
git push origin b1Rebase
อีกวิธีนึงคือใช้ rebase เราก็จะ checkout branch เราเหมือนเดิม
git checkout b1แล้วทำการ rebase กับ branch main
git rebase origin/mainสุดท้ายก็ push ขึ้นไปที่ remote branch ของเรา ก็เป็นอันเสร็จเรียบร้อย
git push -f origin b1Conclude
ความแตกต่างระหว่างสองอันนี้ก็คือ merge จะเอาประวัติทุกอย่างที่อยู่ใน branch main มาให้ด้วย แต่ rebase จะใช้ตัวล่าสุดของ branch main มาให้เท่านั้น ก็แล้วแต่ว่าใครชอบแบบไหน สุดท้ายนี้หากผิดพลาดตรงไหน หรือมีข้อสงสัยอะไร สามารถแสดงความคิดเห็นได้ในส่วนของ comment นะครับ ขอบคุณครับ