SVN: Subversion

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

นี่คือคู่มือสรุปการใช้งาน SVN เบื้องต้นเพื่อให้คุณเริ่มต้นได้อย่างมืออาชีพ


แนวคิดพื้นฐานของ SVN

ต่างจาก Git ที่ทุกคนมีสำเนาของ Database ทั้งหมดไว้ที่เครื่องตัวเอง SVN ใช้ระบบ Central Repository คือมีเซิร์ฟเวอร์กลางตัวเดียว ใครจะทำงานต้อง “Checkout” ไฟล์ออกมา และเมื่อแก้ไขเสร็จก็ “Commit” กลับไปที่ส่วนกลาง


ขั้นตอนการใช้งานหลัก


การเริ่มต้นโปรเจกต์

หากคุณต้องการดึงโปรเจกต์จากเซิร์ฟเวอร์มาไว้ที่เครื่องตัวเองเป็นครั้งแรก ให้ใช้คำสั่ง
svn checkout [URL_ของ_Repository]


การอัปเดตงาน

ก่อนเริ่มงานในแต่ละวัน สำคัญมาก ที่ต้องดึงความเปลี่ยนแปลงล่าสุดจากเพื่อนร่วมงานลงมาเครื่องเราก่อน
svn update


การแก้ไขและตรวจสอบสถานะ

หลังจากแก้ไขไฟล์แล้ว คุณสามารถเช็คได้ว่ามีไฟล์ไหนบ้างที่เปลี่ยนแปลง
svn status

  • M = Modified
  • A = Added
  • D = Deleted

การส่งงาน

เมื่อมั่นใจในโค้ดแล้ว ให้ส่งกลับขึ้นเซิร์ฟเวอร์
svn commit -m "ข้อความอธิบายการแก้ไข"
ข้อควรระวัง: หากมีเพื่อนร่วมงานแก้ไขไฟล์เดียวกันและ Commit ไปก่อนหน้า คุณจะต้องทำการ update และจัดการ Conflict ให้เรียบร้อยก่อนจึงจะ Commit ได้


การจัดการ Branch และ Tag

ใน SVN โครงสร้างมาตรฐานมักจะแบ่งเป็น 3 โฟลเดอร์หลัก

  • trunk: เก็บโค้ดหลักที่ใช้งานจริง
  • branches: เก็บโค้ดแยกย่อยเพื่อพัฒนาฟีเจอร์ใหม่ ๆ
  • tags: เก็บโค้ดเวอร์ชันที่เสถียรแล้ว (Snapshot) เช่น v1.0, v2.0 เพื่อไม่ให้ใครไปแก้ไขอีก

เครื่องมือที่แนะนำ

หากไม่ถนัดการพิมพ์คำสั่ง แนะนำให้ใช้เครื่องมือช่วย

  • TortoiseSVN: สำหรับ Windows
  • Cornerstone: สำหรับ macOS
  • SmartSVN: ใช้งานได้ทุก Platform

อ่านเพิ่มเติม