Git - มันคืออะไร? Git สำหรับผู้เริ่มต้น: คำอธิบาย

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

ลักษณะ

git คืออะไร

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

ใช้คาสต์ ไม่ใช่แพตช์

git .คืออะไร

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

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

การดำเนินงานในท้องถิ่นที่โดดเด่น

git windows

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

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

การตรวจสอบความสมบูรณ์ของข้อมูล

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

ข้อมูลถูกเพิ่มบ่อยที่สุด

git ลบ

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

สถานะไฟล์

การเริ่มต้นใช้งาน Git เกี่ยวข้องกับการจดจำว่าไฟล์สามารถอยู่ในสถานะใดสถานะหนึ่งจากสามสถานะ:

  • มุ่งมั่นนั่นคือไฟล์ถูกเก็บไว้ในที่จัดเก็บในตัวเครื่อง
  • เปลี่ยนเมื่อมีการแก้ไขแต่ยังไม่ได้บันทึก
  • ไฟล์ที่เตรียมไว้ - แก้ไขที่ทำเครื่องหมายไว้สำหรับบันทึก

ตัวอย่างเช่น ในโครงการที่ใช้ Git มีสามส่วนสำหรับสถานะไฟล์ที่แตกต่างกัน:

  • ไดเร็กทอรี Git ที่เก็บข้อมูลเมตา รวมทั้งฐานข้อมูลอ็อบเจ็กต์ ส่วนนี้ของระบบเป็นส่วนที่สำคัญที่สุด
  • ไดเร็กทอรีการทำงาน ซึ่งเป็นสำเนาของบางเวอร์ชันของโปรเจ็กต์ที่ดึงมาจากฐานข้อมูล
  • ไฟล์ที่มีข้อมูลเกี่ยวกับการบันทึกในภายหลัง

การติดตั้ง Git

การตั้งค่า git เริ่มต้น

สิ่งแรกที่ต้องทำเพื่อใช้ระบบควบคุมเวอร์ชันคือการติดตั้ง มีหลายวิธีในการทำเช่นนี้ มีสองตัวเลือกหลัก:

  • การติดตั้ง Git จากแหล่งที่มา
  • ติดตั้งแพ็คเกจสำหรับแพลตฟอร์มที่คุณใช้

การติดตั้ง Git จากซอร์ส

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

ในการติดตั้ง คุณจะต้องมีไลบรารีที่จำเป็น: expat, curl, libiconv, openssl, zlib หลังจากติดตั้งแล้ว คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดของระบบควบคุมเวอร์ชัน คอมไพล์และติดตั้ง

การติดตั้งบนระบบปฏิบัติการ Windows

หากผู้ใช้ไม่มี Linux แต่ต้องการใช้ Git, Windows ยังรองรับระบบนี้ และติดตั้งง่ายมาก มีโปรเจ็กต์ msysGit ที่มีขั้นตอนการติดตั้งที่ง่ายที่สุดวิธีหนึ่ง คุณเพียงแค่ต้องดาวน์โหลดไฟล์ตัวติดตั้ง ซึ่งสามารถพบได้ในหน้า GitHub ของโปรเจ็กต์ จากนั้นจึงเรียกใช้ ในตอนท้ายของการติดตั้ง บนคอมพิวเตอร์จะมีสองเวอร์ชัน - แบบกราฟิกและคอนโซล

การตั้งค่า Git เบื้องต้น

git สำหรับหุ่น

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

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

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

ชื่อที่กำหนดเอง

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

หากคุณระบุตัวเลือก --global การตั้งค่าเหล่านี้จะต้องทำเพียงครั้งเดียว

การเลือกโปรแกรมแก้ไขข้อความ

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

ตรวจสอบพารามิเตอร์

หากต้องการทราบพื้นฐานของ Git คุณต้องสามารถตรวจสอบการตั้งค่าที่คุณใช้ ในการดำเนินการนี้ ให้ใช้คำสั่ง git config --list จะพิมพ์ตัวเลือกที่มีอยู่ทั้งหมดที่สามารถหาได้ ชื่อการตั้งค่าบางอย่างอาจปรากฏขึ้นมากกว่าหนึ่งครั้งในรายการ นี่เป็นเพราะ Git อ่านคีย์เดียวกันจากไฟล์ต่างๆ ในสถานการณ์เช่นนี้ ค่าสุดท้ายจะใช้สำหรับแต่ละคีย์ สามารถตรวจสอบค่าของคีย์บางคีย์ได้โดยพิมพ์ "{key}" แทน "--list" ในคำสั่ง

วิธีสร้างที่เก็บ

เป้าหมายนี้สามารถทำได้สองวิธี ประการแรกคือการนำเข้าแค็ตตาล็อกหรือโครงการที่มีอยู่เข้าสู่ระบบ ที่สองคือการโคลนที่เก็บที่มีอยู่จากเซิร์ฟเวอร์

การสร้างในไดเร็กทอรีที่กำหนด

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

การโคลนที่เก็บ

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

การลบไฟล์ใน Git

คุณสามารถลบไฟล์ใด ๆ ออกจากระบบได้ถ้าแยกออกจากดัชนีนั่นคือจากไฟล์ที่ติดตาม สิ่งนี้ต้องการคำสั่ง git rm นอกจากนี้ยังลบไฟล์ออกจากไดเร็กทอรีการทำงานของผู้ใช้ จากนั้นคุณต้องกระทำ หลังจากนั้น ไฟล์จะหายไปและจะไม่ถูกติดตามอีกต่อไป หากมีการแก้ไขและจัดทำดัชนีแล้ว การลบแบบบังคับจะมีผลกับพารามิเตอร์ -f วิธีนี้จะป้องกันการลบข้อมูลที่ยังไม่ได้เขียนลงในสแน็ปช็อตและไม่สามารถกู้คืนจากระบบได้

เลิกทำการเปลี่ยนแปลง

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

ผล

การทำงานกับ git สำหรับผู้เริ่มต้น

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