Git Diff ระหว่าง 2 สาขา

เผยแพร่แล้ว: 2022-05-09

สารบัญ

บทนำ

ในบทความนี้ เราจะมาเรียนรู้วิธี git diff ระหว่าง 2 สาขา

สิ่งสำคัญคือต้องประเมินสาขาหนึ่งไปยังอีกสาขาหนึ่งก่อนที่จะรวมหรือลบกับ Git ด้วยเหตุนี้ จึงให้ภาพรวมโดยย่อของการเปลี่ยนแปลงในปัจจุบันและช่วยให้คุณตัดสินใจได้ว่าควรรวมหรือลบออก

การเปรียบเทียบสองสาขามีประโยชน์อย่างยิ่ง เนื่องจากช่วยให้คุณเห็นปัญหาในการรวมได้อย่างรวดเร็ว

การควบคุมเวอร์ชันคืออะไร?

วิธีการบันทึกและควบคุมการเปลี่ยนแปลงรหัสซอฟต์แวร์เรียกว่าการควบคุมเวอร์ชัน ซึ่งบางครั้งเรียกว่าการควบคุมแหล่งที่มา ระบบควบคุมเวอร์ชัน (VCS) เป็นเครื่องมือซอฟต์แวร์ที่ช่วยทีมพัฒนาซอฟต์แวร์ในการจัดการการเปลี่ยนแปลงซอร์สโค้ดเมื่อเวลาผ่านไป

VCS ช่วยให้ทีมซอฟต์แวร์ทำงานได้เร็วขึ้นและชาญฉลาดขึ้นเมื่อสภาพแวดล้อมการพัฒนาเพิ่มขึ้น มีประโยชน์อย่างยิ่งต่อทีม DevOps เนื่องจากช่วยลดเวลาในการพัฒนาและเพิ่มความสำเร็จในการปรับใช้

ในฐานข้อมูลประเภทพิเศษ VCS จะคอยติดตามการเปลี่ยนแปลงทุกอย่างในโค้ด หากเกิดข้อผิดพลาด นักพัฒนาสามารถย้อนเวลากลับไปและเปรียบเทียบโค้ดเวอร์ชันก่อนหน้าเพื่อช่วยแก้ไขข้อผิดพลาดในขณะที่ลดการรบกวนสมาชิกในทีมคนอื่นๆ

อ่านเพิ่มเติม: WooCommerce Hooks

การจัดการซอร์สโค้ดคืออะไร?

คำว่าการจัดการซอร์สโค้ด (SCM) หมายถึงกระบวนการติดตามการเปลี่ยนแปลงที่เก็บซอร์สโค้ด SCM ติดตามประวัติการเปลี่ยนแปลงของฐานรหัสและช่วยในการแก้ไขปัญหาเมื่อรวมการอัปเดตจากผู้ร่วมให้ข้อมูลต่างๆ การควบคุมเวอร์ชันยังเรียกว่า SCM

เนื่องจากจำนวนบรรทัดของโค้ดและผู้มีส่วนร่วมในโครงการซอฟต์แวร์เพิ่มขึ้น ค่าใช้จ่ายในการสื่อสารและความซับซ้อนในการจัดการก็เพิ่มขึ้นเช่นกัน SCM เป็นเครื่องมือสำคัญในการลดภาระขององค์กรที่เกิดจากค่าใช้จ่ายในการพัฒนาที่เพิ่มขึ้น

Git คืออะไร?

VCS ที่ใช้กันอย่างแพร่หลายที่สุดคือ Git Git ติดตามการอัปเดตที่คุณทำกับไฟล์ เพื่อให้คุณสามารถดูสิ่งที่คุณทำไปแล้วและย้อนกลับไปยังเวอร์ชันก่อนหน้าได้หากต้องการ Git ยังอำนวยความสะดวกในการทำงานร่วมกันโดยอนุญาตให้รวมการแก้ไขของบุคคลหลายคนไว้ในแหล่งเดียว

ไม่ว่าคุณจะสร้างโค้ดที่มีแต่คุณเท่านั้นที่เห็นหรือทำงานเป็นทีม Git ก็มีคุณค่าสำหรับคุณ

Git เป็นโปรแกรมซอฟต์แวร์ที่ทำงานบนคอมพิวเตอร์ของคุณ คอมพิวเตอร์ของคุณบันทึกข้อมูลและประวัติของมัน คุณสามารถร่วมมือกับนักพัฒนาคนอื่นๆ ได้ง่ายขึ้น หากคุณมีพื้นที่ส่วนกลางซึ่งคุณสามารถเผยแพร่การอัปเดตและรับการเปลี่ยนแปลงจากผู้อื่นได้ Git สามารถผสานการเปลี่ยนแปลงได้โดยอัตโนมัติ ดังนั้นคนสองคนจึงสามารถทำงานในพื้นที่ต่างๆ ของไฟล์เดียวกัน จากนั้นจึงรวมการเปลี่ยนแปลงโดยไม่กระทบต่องานของกันและกัน

Git Diff ระหว่าง 2 สาขา

Git มีประโยชน์อย่างไร?

ต่อไปนี้เป็นประโยชน์พื้นฐานที่สุดของ Git

  1. ประสิทธิภาพ
  2. ความปลอดภัย
  3. ความยืดหยุ่น
  4. การยอมรับอย่างกว้างขวาง
  5. โครงการโอเพ่นซอร์ส

ประสิทธิภาพ

เมื่อเปรียบเทียบกับทางเลือกอื่นๆ โดยเฉพาะ คุณลักษณะด้านประสิทธิภาพพื้นฐานของ Git นั้นแข็งแกร่งมาก ประสิทธิภาพของการใช้การเปลี่ยนแปลงใหม่ การแตกสาขา การผสาน และการเปรียบเทียบเวอร์ชันก่อนหน้านั้นได้รับการปรับให้เหมาะสมทั้งหมด อัลกอริธึมของ Git ใช้ความรู้อย่างกว้างขวางเกี่ยวกับลักษณะทั่วไปของแผนผังไฟล์ซอร์สโค้ดจริง และการใช้ความรู้อย่างกว้างขวางเกี่ยวกับลักษณะทั่วไปของแผนผังไฟล์ซอร์สโค้ดจริง ตลอดจนวิธีการแก้ไขโดยทั่วไปเมื่อเวลาผ่านไปและวิธีเข้าถึง

ความปลอดภัย

ความสมบูรณ์ของซอร์สโค้ดที่ควบคุมเป็นลำดับความสำคัญหลักเมื่อสร้าง Git เนื้อหาของไฟล์ ตลอดจนการเชื่อมต่อที่แท้จริงระหว่างไฟล์และไดเร็กทอรี เวอร์ชัน แท็ก และคอมมิต ทั้งหมดได้รับการเข้ารหัสโดยใช้เทคนิคการแฮชการเข้ารหัส SHA1 ในที่เก็บ Git วิธีนี้จะช่วยรักษาความปลอดภัยของรหัสและอัปเดตประวัติต่อการเปลี่ยนแปลงทั้งที่ไม่ได้ตั้งใจและเป็นอันตราย และช่วยให้มั่นใจว่าประวัติสามารถย้อนกลับไปยังจุดเริ่มต้นได้ คุณอาจมั่นใจว่าซอร์สโค้ดของคุณมีประวัติเนื้อหาที่ถูกต้องเมื่อคุณใช้ Git

ความยืดหยุ่น

Git สามารถปรับเปลี่ยนได้หลายวิธี รวมถึงการสนับสนุนกระบวนการพัฒนาที่ไม่ปกติที่หลากหลาย ประสิทธิภาพทั้งในโครงการขนาดเล็กและขนาดใหญ่ และความสามารถในการทำงานร่วมกันกับระบบและโปรโตคอลปัจจุบันจำนวนหนึ่ง

การยอมรับอย่างกว้างขวาง

Git เป็นระบบควบคุมเวอร์ชันที่ใช้กันอย่างแพร่หลายมากที่สุด นักพัฒนาจำนวนมากใช้ Git แล้ว และบัณฑิตวิทยาลัยส่วนใหญ่อาจใช้ Git เท่านั้น แม้ว่าบางองค์กรอาจต้องผ่านช่วงการเรียนรู้เมื่อเปลี่ยนจาก VCS อื่นเป็น Git แต่นักพัฒนาทั้งในปัจจุบันและที่คาดหวังจำนวนมากไม่ทำเช่นนั้น

โครงการโอเพ่นซอร์ส

Git เป็นโครงการโอเพ่นซอร์สที่ได้รับการสนับสนุนอย่างดีมานานกว่าทศวรรษ ผู้ดูแลโครงการได้แสดงให้เห็นถึงวิจารณญาณที่ดีและความมุ่งมั่นอย่างเต็มที่ในการตอบสนองความต้องการในระยะยาวของผู้ใช้ผ่านการเปิดตัวบ่อยครั้งที่เพิ่มความสามารถในการใช้งานและการทำงาน คุณภาพของซอฟต์แวร์โอเพ่นซอร์สนั้นประเมินได้ง่าย และองค์กรจำนวนมากพึ่งพาซอฟต์แวร์ดังกล่าว เนื่องจาก Git เป็นแหล่งข้อมูลฟรี นักพัฒนามือสมัครเล่นจึงสามารถใช้งานได้โดยไม่ต้องเสียค่าธรรมเนียมการสมัครสมาชิก

ติดตั้ง Git สำหรับ Windows

  • ติดตั้ง Git สำหรับ Windows ด้วยเวอร์ชันล่าสุด
  • คุณควรเห็นหน้าจอวิซาร์ดการตั้งค่า Git หลังจากที่คุณเรียกใช้ตัวติดตั้งสำเร็จ ทำการติดตั้งให้เสร็จสิ้นโดยปฏิบัติตามข้อความแจ้งถัดไปและเสร็จสิ้น สำหรับคนส่วนใหญ่ พารามิเตอร์เริ่มต้นก็เพียงพอแล้ว
  • เปิดใช้งานพรอมต์คำสั่ง

เปรียบเทียบสาขา

เราสามารถเปรียบเทียบบางสิ่งระหว่างสาขาได้ เราสามารถเปรียบเทียบไฟล์ของทั้งสองสาขาหรือการคอมมิตแต่ละรายการได้ หากต้องการดูการเปลี่ยนแปลง เราจะใช้ Git Diff มาดูกันว่าคุณจะนำไปใช้ให้เกิดประโยชน์ได้อย่างไร

เมื่อเราพูดว่ากำลังเปรียบเทียบสาขา เราหมายถึงเคล็ดลับของสองสาขาที่แตกต่างกัน นี่เป็นข้อผูกพันล่าสุดสำหรับสาขาและให้ภาพสะท้อนล่าสุดของงานที่ทำกับพวกเขา เพื่อเปรียบเทียบการคอมมิตทั้งสองนี้ เราใช้คำสั่ง Git Diff ที่มีเครื่องหมาย double-dot(..)

 $ git diff <branch- 1 >..<branch- 2 >

มี Triple-Dot Notation สำหรับเปรียบเทียบสาขา ใช้เพื่อเปรียบเทียบความมุ่งมั่นล่าสุดของสาขาหนึ่งกับฐานของอีกสาขาหนึ่ง นั่นคือบรรพบุรุษร่วมกันของสองสาขา

 $ git diff <branch- 1 >...<branch- 2 >

การใช้ Git Diff เพื่อเปรียบเทียบไฟล์ระหว่างสองสาขา

รูปแบบต่างๆ ของไฟล์เดียวกันอาจมีอยู่ในสองสาขา เราสามารถใช้คำสั่ง Git Diff เพื่อเปรียบเทียบการอัปเดตเหล่านี้โดยระบุชื่อไฟล์หรือตำแหน่ง ขึ้นอยู่กับความต้องการของเรา เราสามารถใช้สัญลักษณ์สองจุดหรือสามจุดก็ได้ ไฟล์จะถูกเปรียบเทียบระหว่างส่วนปลายของกิ่งที่มีจุดสองจุด และการวนซ้ำล่าสุดของไฟล์จะถูกเปรียบเทียบกับเวอร์ชันที่มีอยู่ในบรรพบุรุษร่วมกันที่มีจุดสามจุด

 $ git diff <branch- 1 >..<branch- 2 > filename

บทสรุป:

เป็นเรื่องปกติที่จะใช้หลายสาขาในขณะที่ทำงานกับ Git เพื่อให้งานแตกต่างจากแหล่งที่มาหลัก เมื่อทำงานในสาขาใดสาขาหนึ่ง คุณอาจต้องการรวมสาขาเข้าด้วยกันเพื่อให้งานในสาขาหลักของคุณทำงานต่อไป