ตอนนี้จะทดสอบการ merge หลาย branch โดยเพิ่มความสามารถ 2 อย่างให้โปรเจค hello
ความสามารถแรกคือการแสดง help ซึ่งสามารถเรียกโดยเพิ่ม
-h
ทาง command line เช่นเดียวกับโปรแกรมทั่วๆ ไปครับแก้ code ในไฟล์
hello.py
ดังนี้(ทดสอบแล้วผ่าน) ก็ commit ตามปรกติครับ
เรียบร้อยกับความสามารถแรกไปแล้ว ทีนี้มาเพิ่มความสามารถที่สอง โดยกลับไปแตก branch มาจากตัว master นะครับ
ความสามารถนี้ จะทำการเรียงลำดับชื่อที่รับเข้ามาก่อน แล้วค่อยทักทายแต่ละชื่อที่เรียงแล้วนั้น ซึ่งสามารถเรียกโดยเพิ่ม
-s
เข้าไปตอนเรียกโปรแกรมครับ(ทดสอบกันเอง) แล้วก็ commit ครับ
สลับกลับมาที่ master ถึงตอนนี้เราอาจจะลืมไปแล้วว่าได้ทำการเปลี่ยนแปลงอะไรไว้ที่ branch อื่นบ้าง เราสามารถสั่งให้แสดงความแตกต่างระหว่าง branch ดังนี้ครับ
ข้อมูล 4 บรรทัดแรกจากคำสั่ง diff จะบอกว่าทำการหาความแตกต่างระหว่าง branch ไหน ข้อมูลในบรรทัดที่ 5 (ขึ้นต้นด้วยเครื่องหมาย
@@
) จะบอกช่วงบรรทัดที่นำมาแสดง และข้อมูลที่เหลือจะแสดงอยู่ในรูปของ patch file คือถ้ามีเครื่องหมาย +
หมายถึงมีข้อมูลเพิ่มขึ้นมา เครื่องหมาย -
คือข้อมูลที่ถูกลบทิ้งครับเมื่อพร้อมแล้วก็ merge กันเลย
สังเกตว่าการ merge ย่อยครั้งแรก (show-help) แม้จะเป็นการ Fast-forward เช่นเดียวกับที่ผ่านมา แต่เมื่อ merge เสร็จ จะมี code ส่วนที่ตรวจว่ามีการขอ help หรือเปล่าเพิ่มขึ้น ทำให้บรรทัดต่างๆ ใน code ส่วนที่เหลือถูกเลื่อนลงมาข้างล่างด้วย เมื่อ Git พยายามจะ merge ครั้งถัดมา (sort-name) มันจะทำการเลื่อน code ส่วนที่ต้องตรวจว่าจะ sort หรือเปล่าลงไปให้เองโดยอัตโนมัติครับ (เปิดไฟล์
hello.py
เพื่อศึกษาผลลัพท์)เสร็จแล้วก็อย่าลืมลบ branch ทิ้งนะครับ
No comments:
Post a Comment