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 มีประโยชน์อย่างไร?
ต่อไปนี้เป็นประโยชน์พื้นฐานที่สุดของ Git
- ประสิทธิภาพ
- ความปลอดภัย
- ความยืดหยุ่น
- การยอมรับอย่างกว้างขวาง
- โครงการโอเพ่นซอร์ส
ประสิทธิภาพ
เมื่อเปรียบเทียบกับทางเลือกอื่นๆ โดยเฉพาะ คุณลักษณะด้านประสิทธิภาพพื้นฐานของ 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 เพื่อให้งานแตกต่างจากแหล่งที่มาหลัก เมื่อทำงานในสาขาใดสาขาหนึ่ง คุณอาจต้องการรวมสาขาเข้าด้วยกันเพื่อให้งานในสาขาหลักของคุณทำงานต่อไป