การใช้งาน 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
อ่านเพิ่มเติม