โพสต์นี้จะอธิบายสั้น ๆ เกี่ยวกับการแนะนำ Rebase แบบโต้ตอบของ Git
รู้เบื้องต้นเกี่ยวกับ Git Interactive Rebase
Rebase แบบโต้ตอบของ Git เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการจัดการการคอมมิตในที่เก็บ Git อนุญาตให้ผู้พัฒนา/ผู้ใช้แก้ไข จัดลำดับใหม่ หรือลบการคอมมิตในประวัติของสาขา การรีเบสแบบโต้ตอบมีประโยชน์อย่างยิ่งเมื่อนักพัฒนาจำเป็นต้องล้างสาขาก่อนที่จะรวมเข้ากับสาขาอื่น หรือเมื่อต้องการเปลี่ยนแปลงคอมมิชชันก่อนหน้านี้
Git Interactive Rebase ทำงานอย่างไร
ในการเริ่มทำงานกับ Rebase แบบโต้ตอบของ Git ผู้ใช้สามารถทำการเปลี่ยนแปลงได้หลายรายการด้านล่าง:
จัดลำดับใหม่
หากต้องการจัดลำดับการคอมมิตใหม่ ให้ลองทำตามขั้นตอนด้านล่าง:
- ไปที่ที่เก็บ Git ในเครื่อง
- ตรวจสอบบันทึก Git
- เปลี่ยนลำดับของการกระทำด้วยตนเองและตรวจสอบการเปลี่ยนแปลง
ขั้นตอนที่ 1: นำทางไปยังที่เก็บในเครื่อง
เริ่มแรก ไปที่ที่เก็บ Git ในเครื่องโดยระบุพาธโดยใช้ปุ่ม “ ซีดี ' สั่งการ:
ซีดี 'C:\Users\user\Git \t estingproject'
ขั้นตอนที่ 2: ตรวจสอบบันทึก Git
ดูบันทึก Git ที่สมบูรณ์ด้วยความช่วยเหลือของ “ git log –ออนไลน์ '. มันจะแสดงแต่ละการกระทำในบรรทัดเดียว:
บันทึกคอมไพล์ --ออนไลน์เป็นผลให้คอมมิชชันทั้งหมดแสดงบนเทอร์มินัล Git Bash:
ขั้นตอนที่ 3: จัดลำดับคอมมิตใหม่
ตอนนี้ดำเนินการ “ คอมไพล์ rebase -i ” คำสั่งที่ “ -ฉัน ” ใช้สำหรับโหมดโต้ตอบ และ “ หัวหน้า ~ 3 ” จะเลือกคอมมิชชันสามรายการจากบันทึก Git:
คอมไพล์ rebase -ฉัน หัว ~ 3ภาพผลลัพธ์ที่แสดงแทนที่ตำแหน่งของการคอมมิตทั้งหมดในเอดิเตอร์ที่เปิดอยู่:
ภาพด้านล่างแสดงให้เห็นว่าการคอมมิตถูกแทนที่ด้วยตนเอง:
ในที่สุด คอมมิชชันจะถูกสร้างใหม่ได้สำเร็จด้วยความช่วยเหลือของ “ คอมไพล์ rebase -i '.
ขั้นตอนที่ 4: ตรวจสอบการเปลี่ยนแปลง
ตรวจสอบการเปลี่ยนแปลงโดยดำเนินการคำสั่งที่กำหนด:
บันทึกคอมไพล์ --ออนไลน์สังเกตได้ว่าคอมมิชชันที่เลือกได้รับการจัดลำดับใหม่เรียบร้อยแล้ว:
การควบรวมกิจการ
ในการรวมสองคอมมิชชันขึ้นไป ให้ทำตามคำแนะนำที่ให้ไว้:
- ดูบันทึก Git
- ใช้ “ git rebase -i HEAD~3 ” คำสั่งเพื่อรวมคอมมิทในคอมมิทเดียว
- แทนที่ ' เลือก ” คำสำคัญกับ “ สควอช ” เพื่อผสาน
ขั้นตอนที่ 1: ตรวจสอบบันทึก Git
ขั้นแรก ดูประวัติทั้งหมดของบันทึก Git โดยดำเนินการตามคำสั่งที่ให้ไว้ด้านล่าง
บันทึกคอมไพล์ --ออนไลน์รูปภาพที่ระบุแสดงผลของคำสั่งด้านบน:
ขั้นตอนที่ 2: รวมคอมมิต
ตอนนี้รวมคอมมิชชันโดยใช้ ' คอมไพล์ rebase -i ' สั่งการ. “ หัวหน้า ~ 3 ” ใช้เพื่อเลือกคอมมิตสามรายการและเปิดตัวแก้ไขที่ระบุ:
คอมไพล์ rebase -ฉัน หัว ~ 3เป็นผลให้ตัวแก้ไขได้รับการเปิดตัว:
ขั้นตอนที่ 2: แทนที่ 'เลือก' ด้วย 'สควอช'
แทนที่ ' เลือก ” คำที่มี “ สควอช ” ที่ใช้เพื่อรวมการคอมมิตในอันแรกและบันทึกการเปลี่ยนแปลง:
ขั้นตอนที่ 3: ยอมรับการเปลี่ยนแปลง
จากนั้นตัวแก้ไขใหม่จะปรากฏขึ้นบนหน้าจอ ที่นี่เขียนข้อความยืนยันเพื่อยืนยันการเปลี่ยนแปลงและบันทึกโดยกดปุ่ม ' Ctrl+s ”:
สังเกตได้ว่าการเปลี่ยนแปลงทั้งหมดได้รับการดำเนินการเรียบร้อยแล้ว:
ขั้นตอนที่ 4: การยืนยัน
ตรวจสอบการเปลี่ยนแปลงที่กำหนดข้างต้นโดยใช้คำสั่งที่กล่าวถึง:
บันทึกคอมไพล์ --ออนไลน์สังเกตได้ว่าการคอมมิตที่เลือกทั้งหมดถูกผสานสำเร็จแล้ว:
ลบคอมมิต
หากต้องการลบการคอมมิตออกจากประวัติของบันทึก Git ให้ลองทำตามขั้นตอนที่ระบุไว้ด้านล่าง:
- ดูประวัติบันทึก Git
- ลบการผูกมัดด้วยตนเองจากตัวแก้ไข
- ตรวจสอบโดยดูประวัติบันทึกของ Git
ขั้นตอนที่ 1: ตรวจสอบประวัติบันทึก Git
เรียกใช้คำสั่งที่กำหนดเพื่อตรวจสอบบันทึก Git “ git log –ออนไลน์ ” คำสั่งใช้เพื่อแสดงแต่ละคอมมิชชันในบรรทัดเดียว:
บันทึกคอมไพล์ --ออนไลน์ภาพที่แสดงประวัติบันทึก Git ที่สมบูรณ์:
ขั้นตอนที่ 2: ลบคอมมิต
เปิดตัวแก้ไขโดยใช้ปุ่ม “ คอมไพล์ rebase -i ” คำสั่งพร้อมกับ “ หัว ~ 2 ” เพื่อเลือกคอมมิชชันสองรายการจากประวัติบันทึก:
คอมไพล์รีเบส -ฉัน หัว ~ 2เลือกคอมมิตและลบออกจากเอดิเตอร์ด้วยตนเอง:
ที่นี่ ให้ลบคอมมิชชันที่เลือกออกจากตัวแก้ไขแล้วกดปุ่ม “ Ctrl+s ” ปุ่มเพื่อบันทึกการเปลี่ยนแปลง:
ภาพผลลัพธ์บ่งชี้ว่าการดำเนินการ rebase ดำเนินการสำเร็จแล้ว:
ขั้นตอนที่ 3: การยืนยัน
เรียกใช้คำสั่งที่ระบุด้านล่างเพื่อวัตถุประสงค์ในการตรวจสอบ:
บันทึกคอมไพล์ --ออนไลน์การคอมมิตที่เลือกถูกลบออกจากประวัติบันทึกเรียบร้อยแล้ว:
นั่นคือทั้งหมดที่เกี่ยวกับการรีเบสเชิงโต้ตอบของ Git
บทสรุป
การรีเบสแบบโต้ตอบของ Git เป็นการดำเนินการที่ทรงพลังที่สุดสำหรับการจัดการการคอมมิตในที่เก็บ Git อนุญาตให้ผู้พัฒนา/ผู้ใช้แก้ไข จัดลำดับใหม่ หรือลบการคอมมิตในประวัติของสาขาโดยใช้ ' คอมไพล์ rebase -i ' สั่งการ. นอกจากนี้ยังสามารถใช้เพื่อล้างประวัติ Git โดยรวมการกระทำทั้งหมดไว้ในที่เดียว โพสต์นี้ได้ระบุการแนะนำการรีเบสแบบโต้ตอบของ Git