ในฐานะนักพัฒนา เราไม่ใช่คนแปลกหน้าในการจัดการและบันทึกสำเนาของรหัสต่างๆ ก่อนที่จะเข้าร่วมกับรหัสหลัก
มาพูดคุยถึงวิธีที่ดีกว่าและมีประสิทธิภาพในการจัดการโค้ดเวอร์ชันต่างๆ และรวมเข้ากับโค้ดหลักหลังการทดสอบ
มาดำน้ำกัน:
บทนำสู่ระบบควบคุมเวอร์ชัน
เราได้กล่าวถึงว่า Git เป็นระบบควบคุมเวอร์ชัน ระบบควบคุมเวอร์ชันคืออะไรและทำงานอย่างไร
ระบบควบคุมเวอร์ชันคือระบบที่ช่วยให้นักพัฒนาสามารถติดตามการเปลี่ยนแปลงไฟล์ได้ ระบบควบคุมเวอร์ชันทำงานโดยการสร้างคอลเลกชันของไฟล์เวอร์ชันต่างๆ และการเปลี่ยนแปลงที่ทำกับแต่ละเวอร์ชัน ช่วยให้คุณสลับไปมาระหว่างไฟล์เวอร์ชันต่างๆ ได้อย่างราบรื่น
ระบบควบคุมเวอร์ชันเก็บคอลเลกชันของการเปลี่ยนแปลงไฟล์ในตำแหน่งที่เรียกว่า ที่เก็บ .
ในกรณีการใช้งานส่วนใหญ่ ระบบควบคุมเวอร์ชันช่วยติดตามการเปลี่ยนแปลงในไฟล์ซอร์สโค้ดเนื่องจากมีข้อความดิบ อย่างไรก็ตาม ระบบควบคุมเวอร์ชันไม่จำกัดเฉพาะไฟล์ข้อความ พวกเขาสามารถติดตามการเปลี่ยนแปลงแม้กระทั่งในข้อมูลไบนารี
ประเภทของระบบควบคุมเวอร์ชัน
ระบบควบคุมเวอร์ชันมีหลายประเภท พวกเขารวมถึง:
- ระบบควบคุมเวอร์ชันที่แปลเป็นภาษาท้องถิ่น : ระบบควบคุมเวอร์ชันประเภทนี้ทำงานโดยการจัดเก็บไฟล์เวอร์ชันต่างๆ ภายในเครื่องโดยสร้างสำเนาของการเปลี่ยนแปลงไฟล์
- ระบบควบคุมเวอร์ชันส่วนกลาง : ระบบควบคุมเวอร์ชันรวมศูนย์รวมเซิร์ฟเวอร์ส่วนกลางพร้อมไฟล์เวอร์ชันต่างๆ อย่างไรก็ตาม ผู้พัฒนายังคงเก็บสำเนาของไฟล์ไว้ในเครื่องคอมพิวเตอร์ของตน
- ระบบควบคุมเวอร์ชันแบบกระจาย : ระบบควบคุมเวอร์ชันแบบกระจายไม่ต้องใช้เซิร์ฟเวอร์ อย่างไรก็ตาม มันเกี่ยวข้องกับนักพัฒนาแต่ละคนในการโคลนสำเนาของที่เก็บหลัก และคุณสามารถเข้าถึงการเปลี่ยนแปลงของไฟล์ทั้งหมดได้ ระบบ VC แบบกระจายที่เป็นที่นิยม ได้แก่ Git, Bazaar และ Mercurial
มาเริ่มกันเลยกับ Git
ความรู้เบื้องต้นเกี่ยวกับ Git
Git คือระบบควบคุมเวอร์ชันแบบกระจายที่พัฒนาโดย Linus Torvalds ผู้สร้าง Linux Kernel เริ่มแรกพัฒนาขึ้นเพื่อช่วยในการพัฒนาเคอร์เนลลินุกซ์ Git มีประสิทธิภาพและใช้งานง่าย รองรับการพัฒนาเชิงเส้น ซึ่งช่วยให้นักพัฒนามากกว่าหนึ่งรายสามารถทำงานในโครงการเดียวกันได้พร้อมกัน
มาพูดคุยถึงวิธีการติดตั้ง Git และใช้เพื่อจัดการที่เก็บ:
วิธีการติดตั้ง Git บน Linux
ขึ้นอยู่กับระบบที่คุณใช้ คุณจะติดตั้ง Git เป็นค่าเริ่มต้น อย่างไรก็ตาม บางระบบอาจไม่ได้ติดตั้งไว้ หากเป็นกรณีของคุณ ให้ใช้คำสั่งต่อไปนี้เพื่อติดตั้งลงในระบบของคุณ
เดเบียน/อูบุนตู
sudo apt-get update && sudo apt-get อัพเกรด -และ sudo apt-get install ไป -และArch Linux
ติดตั้ง Git บน Arch:
sudopacman-NSไปFedora/RedHat/CentOS
ติดตั้งในตระกูล RHEL:
sudo ยำติดตั้ง ไปsudodnfติดตั้ง ไป
วิธีกำหนดค่า Git
เมื่อคุณติดตั้ง Git คุณจะสามารถเข้าถึงคำสั่งทั้งหมดที่คุณสามารถใช้เพื่อทำงานกับที่เก็บในเครื่องและระยะไกล
อย่างไรก็ตาม คุณต้องกำหนดค่าสำหรับการใช้งานครั้งแรก เราจะใช้ git config เพื่อตั้งค่าตัวแปรต่างๆ
การกำหนดค่าแรกที่เราตั้งค่าคือชื่อผู้ใช้และที่อยู่อีเมล ใช้คำสั่ง git config ที่แสดงเพื่อตั้งค่าชื่อผู้ใช้ ที่อยู่อีเมล และโปรแกรมแก้ไขข้อความเริ่มต้น
git config --ทั่วโลกชื่อผู้ใช้ myusernamegit config -ทั่วโลกuser.email ชื่อผู้ใช้@email.comgit config --ทั่วโลกcore.editorฉันมา
คุณสามารถดูการกำหนดค่า git ได้โดยใช้คำสั่ง git config –list เป็น:
git config --รายการuser.name=myusername
user.email=ชื่อผู้ใช้@email.com
core.editor=ฉันมา
วิธีการตั้งค่าที่เก็บ
เราไม่สามารถพูดถึง Git และไม่ได้พูดถึงคำว่า repo หรือ repository
ที่เก็บข้อมูล โดยทั่วไปเรียกว่า repo รวบรวมไฟล์และไดเร็กทอรีด้วยการเปลี่ยนแปลงตามลำดับที่ติดตามโดยระบบควบคุมเวอร์ชัน
การเปลี่ยนแปลงในที่เก็บได้รับการจัดการหรือติดตามโดยการคอมมิต ซึ่งเป็นสแน็ปช็อตของการเปลี่ยนแปลงอย่างง่ายที่ใช้กับไฟล์หรือไดเร็กทอรี
คอมมิตอนุญาตให้คุณใช้การเปลี่ยนแปลงหรือเปลี่ยนกลับเป็นการเปลี่ยนแปลงเฉพาะภายในที่เก็บ
ตอนนี้ เรามาพูดถึงวิธีตั้งค่าที่เก็บ Git กัน
สมมติว่าคุณมีไดเร็กทอรีโครงการที่คุณต้องการใช้เป็น git repo และติดตามการเปลี่ยนแปลง คุณสามารถเริ่มต้นได้โดยใช้คำสั่ง:
git initเมื่อคุณรันคำสั่ง git init แล้ว Git จะเริ่มต้นไดเร็กทอรีเป็นที่เก็บและสร้างไดเร็กทอรี .git ที่ใช้เก็บไฟล์คอนฟิกูเรชันทั้งหมด
ในการเริ่มติดตามการเปลี่ยนแปลงโดยใช้ Git คุณต้องเพิ่มโดยใช้คำสั่ง Git add ตัวอย่างเช่น หากต้องการเพิ่มไฟล์ ให้รีบูต.c
git addreboot.cในการเพิ่มไฟล์ทั้งหมดในไดเร็กทอรีนั้นและเริ่มติดตามการเปลี่ยนแปลง ให้ใช้คำสั่ง:
git add.หลังจากเพิ่มไฟล์แล้ว ขั้นตอนต่อไปคือการสเตจการคอมมิต ตามที่กล่าวไว้ก่อนหน้านี้ คอมมิตช่วยติดตามการเปลี่ยนแปลงของไฟล์ในที่เก็บ
การใช้คำสั่ง git commit คุณสามารถเพิ่มข้อความที่ระบุการเปลี่ยนแปลงของไฟล์ได้
ตัวอย่างเช่น ข้อความสำหรับการคอมมิตเริ่มต้นจะคล้ายกับ:
git คอมมิท -NSความมุ่งมั่นเริ่มต้นบันทึก : การเพิ่มข้อความ git ที่สื่อความหมายและสื่อความหมายช่วยผู้ใช้รายอื่นโดยใช้ที่เก็บระบุการเปลี่ยนแปลงไฟล์
gitignore
สมมติว่าคุณมีไฟล์และไดเร็กทอรีบางไฟล์ที่คุณไม่ต้องการรวมไว้ในที่เก็บหลัก ตัวอย่างเช่น คุณอาจมีไฟล์การกำหนดค่าสำหรับการพัฒนาที่คุณใช้อยู่
ในการทำสิ่งนี้ให้สำเร็จ คุณต้องใช้ไฟล์ .gitignore ในไฟล์ .gitignore คุณสามารถเพิ่มไฟล์และไดเร็กทอรีทั้งหมดที่ Git ไม่ควรติดตาม
ตัวอย่างของไฟล์ .gitignore โดยทั่วไปจะมีลักษณะดังนี้:
.DS_Storenode_modules/
tmp/
*.บันทึก
*.zip
.ความคิด/
yarn.lock package-lock.json
.tmp*
Git Remote Repositories
Git เป็นระบบที่มีประสิทธิภาพซึ่งขยายออกไปนอกขอบเขตของที่เก็บในเครื่อง บริการต่างๆ เช่น GitHub, Bitbucket และ Gitlab มีที่เก็บระยะไกลที่นักพัฒนาสามารถโฮสต์และทำงานร่วมกันในโครงการต่างๆ โดยใช้ git repos
แม้ว่าบริการ Git ระยะไกลบางอย่างจะเป็นบริการระดับพรีเมียม—มีบริการฟรีมากมาย— แต่ก็มีเครื่องมือและฟังก์ชันที่ยอดเยี่ยม เช่น คำขอดึง และอื่นๆ อีกมากมายที่รับประกันการพัฒนาที่ราบรื่น
บันทึก : คุณยังสามารถสร้างบริการ git ที่โฮสต์เองได้ ดูบทแนะนำ Gogs ของเราเพื่อเรียนรู้วิธีการทำสิ่งนี้ให้สำเร็จ
ให้เราดูวิธีต่างๆ ในการทำงานกับที่เก็บระยะไกล
การโคลนที่เก็บระยะไกล
วิธีที่นิยมในการทำงานกับที่เก็บระยะไกลคือการคัดลอกไฟล์ทั้งหมดใน repo ระยะไกลไปยัง repo ในเครื่อง กระบวนการที่เรียกว่าการโคลน
ในการดำเนินการนี้ ให้ใช้คำสั่ง git clone ตามด้วย URL ของที่เก็บเป็น:
git โคลนhttps://github.com/linuxhint/code.gitในบริการต่างๆ เช่น Github คุณสามารถดาวน์โหลดที่เก็บซิปได้ภายใต้ตัวเลือกดาวน์โหลด
หากต้องการดูสถานะของไฟล์ในที่เก็บ ให้ใช้คำสั่ง git status:
สถานะ gitคำสั่งนี้จะบอกคุณว่าไฟล์ในที่เก็บมีการเปลี่ยนแปลงหรือไม่
อัปเดต repo ในเครื่องจากรีโมท
หากคุณมีที่เก็บโคลน คุณสามารถรับการเปลี่ยนแปลงทั้งหมดจากที่เก็บระยะไกลและรวมเข้ากับที่เก็บในเครื่องด้วยคำสั่ง Git fetch:
git fetchการสร้างที่เก็บระยะไกลใหม่
ในการสร้างที่เก็บระยะไกลจากบรรทัดคำสั่ง ให้ใช้คำสั่ง git remote add เป็น:
git รีโมทเพิ่ม new_repo https://github.com/linuxhint/new_repo.gitกำลังผลัก repo ในพื้นที่ไปยังรีโมท
หากต้องการส่งการเปลี่ยนแปลงทั้งหมดจากที่เก็บในเครื่องไปยังที่เก็บระยะไกล คุณสามารถใช้คำสั่ง git push ตามด้วย URL หรือชื่อของที่เก็บระยะไกล ขั้นแรก ตรวจสอบให้แน่ใจว่าคุณได้เพิ่มไฟล์แล้ว เพิ่มข้อความยืนยันเป็น:
git add.git คอมมิท -NSเพิ่มใหม่การทำงานเพื่อปิดgit pushที่มา https://github.com/linuxhint/code.git
การลบที่เก็บระยะไกล
หากคุณต้องการลบที่เก็บระยะไกลออกจากบรรทัดคำสั่ง ให้ใช้คำสั่ง git remote rm เป็น:
git รีโมท rmhttps://github.com/linuxhint/new_repo.gitบทสรุป
เราได้ครอบคลุมพื้นฐานของการตั้งค่าระบบควบคุมเวอร์ชัน Git และวิธีใช้งานเพื่อทำงานกับที่เก็บในเครื่องและระยะไกล
คู่มือสำหรับผู้เริ่มต้นที่เป็นมิตรนี้ไม่ใช่เอกสารอ้างอิงที่ครบถ้วน พิจารณาเอกสารประกอบเนื่องจากมีคุณสมบัติมากมายที่ไม่ครอบคลุมในบทช่วยสอนนี้