ความหลากหลายและความซับซ้อนของโปรเจคโปรแกรมมิ่งในปัจจุบันทำให้การจัดการไฟล์ใหญ่ ๆ หรือไฟล์ binary เช่น รูปภาพและวิดีโอด้วย Git ธรรมดาอาจไม่เพียงพอ การใช้ Git กับไฟล์ขนาดใหญ่ทำให้เกิดปัญหาด้านประสิทธิภาพและพื้นที่เก็บข้อมูลได้ ซึ่งนี่คือที่มาของ Git LFS หรือ Git Large File Storage ที่เป็นทางออกที่ถูกคิดค้นขึ้นมา
ในบทความนี้เราจะมาทำความรู้จักกับคำสั่งหนึ่งของ Git LFS - นั่นคือ `git lfs push` ที่ใช้สำหรับการส่งไฟล์ binary ขึ้นไปยัง remote repository ซึ่งคำสั่งนี้ถือเป็นหนึ่งในขั้นตอนสำคัญเพื่อจัดการไฟล์ขนาดใหญ่ในโปรเจคของเรา
Git LFS คือส่วนเสริมของ Git ที่ถูกออกแบบมาให้จัดการกับไฟล์ใหญ่ ๆ ได้ดีขึ้น โดยเบื้องหลังการทำงานของมันคือการเปลี่ยนวิธีเก็บไฟล์จากการเก็บทั้งไฟล์จริงๆ ไปเป็นการเก็บไฟล์ขนาดเล็กที่อ้างอิงไปยังไฟล์จริง และใช้ประโยชน์จากพื้นที่เก็บข้อมูลจากแหล่งอื่นที่มีพื้นที่มากกว่า
Git LFS จะทำงานร่วมกับคำสั่งของ Git พื้นฐานโดยไม่ยุ่งเกี่ยวกับการทำงานอื่นเพิ่มเติม อย่างไรก็ดีเราจำเป็นต้องรู้จักคำสั่งใหม่ ๆ ที่ถูกเพิ่มเข้ามาเพื่อใช้ฟีเจอร์นี้อย่างเต็มที่
คำสั่ง `git lfs push` ถูกใช้งานเมื่อเราต้องการส่งไฟล์ binary ขึ้นไปยัง remote repository หลังจากที่เราได้เพิ่มและ commit ไฟล์เหล่านั้นใน local repository ของเราแล้ว
ขั้นตอนการใช้งาน git lfs push:
1. ติดตั้ง Git LFS: เริ่มต้นด้วยการติดตั้ง Git LFS โดยใช้คำสั่ง:
git lfs install
2. การติดตามไฟล์ขนาดใหญ่: ระบุชนิดไฟล์ที่ต้องการให้ Git LFS ช่วยจัดการ เช่น:
git lfs track "*.psd"
คำสั่งนี้ใช้เพื่อติดตามไฟล์ประเภท Photoshop ซึ่งเป็นไฟล์ขนาดใหญ่
3. ทำการ add และ commit ไฟล์:
git add file.psd
git commit -m "Add PSD file"
4. ใช้คำสั่ง git lfs push: เมื่อไฟล์ถูกเตรียมพร้อมแล้ว เราก็สามารถใช้คำสั่ง:
git lfs push origin main
คำสั่งนี้จะส่งไฟล์ขนาดใหญ่ขึ้น remote branch โดยตรง โดยที่ไฟล์จะถูกจัดเก็บในระบบของ LFS แทนการจัดเก็บแบบปกติใน Git
การเลือกใช้ Git LFS เหมาะกับโปรเจคที่มีไฟล์ขนาดใหญ่จำนวนมาก ไม่ว่าจะเป็นในวงการเกม การออกแบบกราฟิก หรือการพัฒนาแอปพลิเคชันที่ต้องใช้ assets หนัก ๆ เพื่อให้การจัดการเหล่านั้นกลายเป็นเรื่องที่สะดวกขึ้น
ตัวอย่างการใช้งานในจริง:
สมมติว่าคุณกำลังพัฒนาเกมที่มีไฟล์ต้นฉบับเป็นภาพความละเอียดสูงและเสียงประกอบ คุณสามารถตั้งค่า Git LFS ให้ดูแลไฟล์เหล่านี้โดยไม่ต้องกังวลว่า repository จะอ้วนขึ้นอย่างรวดเร็ว ตัวอย่างกำหนดการใช้งานในไฟล์ `.gitattributes` ได้ดังนี้:
*.png filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
จากนั้นใช้คำสั่ง `git lfs push` ทุกครั้งที่มีการเปลี่ยนแปลงไฟล์ในประเภทเหล่านี้เพื่อให้มั่นใจว่าไฟล์ขนาดใหญ่ถูกจัดการได้อย่างถูกต้องและมีประสิทธิภาพ
Git LFS ถือเป็นเครื่องมือที่มีประโยชน์สำหรับนักพัฒนาที่ต้องการจัดการไฟล์ขนาดใหญ่ในโปรเจคของตนเอง และคำสั่ง `git lfs push` ก็เป็นหนึ่งในคำสั่งสำคัญที่ควรทำความรู้จักและใช้อย่างถูกต้องเพื่อให้มั่นใจว่าไฟล์ binary ถูกส่งขึ้นไปยัง remote repository ได้อย่างเหมาะสม การมีความรู้และความเข้าใจในสิ่งเหล่านี้จะช่วยให้คุณจัดการโปรเจคได้อย่างมีประสิทธิภาพ ถ้าต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้คำสั่ง Git หรือการเขียนโปรแกรมอื่น ๆ EPT ยินดีเสนอคอร์สเรียนที่ครอบคลุมซึ่งจะช่วยเพิ่มความสามารถของคุณในวงการนี้อย่างแน่นอน!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM