Site icon PlusMagi's Blog By Pitt Phunsanit

Tarball: เป็น version control ?

“Tarball ไม่ใช่ Version Control” ครับ แม้ว่าเราจะสามารถใช้มันเพื่อเก็บสำรองข้อมูลในแต่ละช่วงเวลาได้ก็ตามเพื่อให้เห็นภาพชัดเจน เรามาดูความแตกต่างระหว่าง Tarball ( Backup/Archive ) กับ Version Control Systems ( VCS ) อย่าง Git กันครับ


หน้าที่หลัก ( Primary Function )


การเปรียบเทียบคุณสมบัติ

คุณสมบัติTarball ( Backup )Version Control ( Git )
การเก็บข้อมูลเก็บไฟล์ทั้งหมดซ้ำ ๆ ใหม่ทุกครั้งเก็บเฉพาะส่วนที่เปลี่ยนแปลง ( Delta )
ประวัติการแก้ไขดูลำดับการแก้ลำบาก ( ต้องไล่เปิดดูทีละไฟล์ )ดู Log ได้ละเอียดว่าบรรทัดไหนเปลี่ยน
การย้อนกลับ ( Rollback )ต้องลบของเก่าแล้วแตกไฟล์ Tarball ทับสั่ง checkout หรือ revert ได้ทันที
การทำงานร่วมกันแก้พร้อมกันไม่ได้ ( ไฟล์จะทับกัน )มีระบบ Branch และ Merge เพื่อรวมงาน
ขนาดพื้นที่เปลืองพื้นที่มากถ้าทำบ่อย ๆประหยัดพื้นที่กว่าเพราะเก็บส่วนต่าง

แล้วทำไมเรายังใช้ Tarball อยู่ ?

ถึงแม้ Tarball จะไม่ใช่ Version Control แต่ในสายงาน System Admin หรือ Developer มันมีหน้าที่ที่ Git ทำไม่ได้ดีเท่า เช่น


สรุป

Tarball คือ “กล่องเก็บของ” ส่วน Version Control คือ “กล้องวงจรปิด” ครับ

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


Exit mobile version