หากคุณเป็น Developer Version Control Software ช่วยติดตามการเปลี่ยนแปลงโค้ด สำคัญในโปรเจกต์ทีม ให้ติดตาม Changes แบบ Real-time แม้ GIT นิยม (เฉพาะ Open-source) Subversion (SVN) ให้ Control มากกว่า
มี SVN Clients หลายตัว แตสำหรับ Mac SvnX เป็นตัวเลือกยอดนิยม เราเคยแนะนำมากว่า 10 ปีแล้ว มีฟีเจอร์ใหม่และการเปลี่ยนแปลงมากมาย หากอยากใช้ SvnX นี่คือทุกอย่างที่ต้องรู้เพื่อเริ่มต้น
Subversion (SVN) คืออะไร?
Version Control อื่นๆ เช่น GIT ใช้ Decentralized approach แต่ละคนได้ Copy ของโค้ด ทำงานบน Copy แล้ว Patch (Commit) กลับ Codebase ใหญ่
Apache Subversion ทำงานต่างออกไป ใช้ Centralized approach มี Central Repository เพียงที่เดียว แต่ละ Developer ทำงานบนส่วนของตน Revision ทุกครั้งถูก Track สามารถ Revert กลับเวอร์ชันเก่าได้ง่าย
ให้ Admin Control มากกว่า Security มากกว่า และง่ายต่อการเริ่มใช้งาน หาก Centralized approach ตรงใจ ติดตั้ง SvnX คือขั้นแรก สู่ Subversion บน Mac Client นี้เพิ่ม GUI Interface ให้ Subversion Terminal app
ติดตั้ง SvnX Subversion บน macOS
SvnX เวอร์ชันเก่า ต้องติดตั้ง Subversion บน macOS ก่อน ไม่ต้องแล้ว เพราะ macOS มี Subversion เวอร์ชันใหม่ Built-in แล้ว
เพื่อติดตั้งและรัน SvnX เวอร์ชันล่าสุด ต้องติดตั้ง Homebrew Package Manager สำหรับ macOS เวอร์ชันอื่นๆ (รวมเวอร์ชัน "Official" ที่ทิ้งทอดมานาน) ไม่ทำงานบน macOS ใหม่ๆ เพราะเป็น 32-bit
- ยังไม่มี Homebrew: เปิด Terminal พิมพ์
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"เริ่มติดตั้ง รอดาวน์โหลด/รันสคริปต์เสร็จ ตามคำแนะนำบนหน้าจอ - ติดตั้ง Homebrew แล้ว: พิมพ์
brew cask install svnxใน Terminal Enter จะดาวน์โหลดและติดตั้ง SvnX 64-bit ล่าสุด Homebrew จะแจ้งเมื่อเสร็จ
- เปิด SvnX จาก Launchpad หรือ Double-click ใน Applications/ Finder ครั้งแรก macOS อาจบล็อกเพื่อ Security
ต้องอนุญาต: Launchpad > System Preferences > Security & Privacy > General tab > Open Anyway ถัดจากข้อความเตือน SvnX
- macOS จะขอยืนยันอีกครั้ง แตะ Open เพื่อปล่อยให้ SvnX รัน
หลังเปิดครั้งแรก macOS จะอนุญาตให้ SvnX รันได้โดยไม่มีปัญหา Security อีก
วิธีใช้งาน SvnX Subversion
เปิด SvnX ครั้งแรก จะเห็นหน้าจอพื้นฐาน ด้านซ้าย 2 หมวด: Working Copies และ Repositories
Repositories = Central SVN Servers ที่เชื่อมต่อ เก็บไฟล์โปรเจกต์ทั้งหมด Update ไฟล์ → Revision tag ใหม่ แยกเวอร์ชันเก่า/ใหม่ได้
Working Copies = Local copies ของ Repository files ทำให้แก้ไข Local ก่อน Commit ไป Repository ไฟล์แยก: Trunk (Stable), Branch (Development), Tag (Copy ของ Main repo)
- เพิ่ม Repository ใหม่: แตะ Settings button เมนูซ้าย → Add Repository
- กรอกข้อมูล SVN Server: URL ของ Repository, Name ชื่อที่จดจำง่าย Username/Password หากมี
- กรอกเสร็จ Double-click Entry Repository ด้านซ้าย หรือ Details > Refresh Now จะเปิดเมนูเข้าถึง Repository files, revisions, ทำการเปลี่ยนแปลงได้
- Export Working Copy: เลือก Revision (เลข Rev. column) → เลือก Folder ล่างหน้าจอ → แตะ Checkout มุมขวาบน → ยืนยันที่บันทึก → Checkout
- Working Copy ที่บันทึกจะอยู่ในหน้าจอหลัก SvnX ด้านซ้าย Working Copies แก้ไขไฟล์ Working Copy → Double-click Entry ในหน้าจอหลัก → หน้าต่าง Working Copy ปรากฏ → เลือก Folder/ไฟล์ที่แก้ → แตะ Commit บันทึกเป็น Revision ใหม่ไป Central SVN Repository
Revision ใหม่ทุกครั้ง จะแสดงใน Repository window ของ SVN Server สร้าง Working Copy ใหม่จาก Revision เก่าได้ เพื่อ "Fork" โค้ด และ Revert กลับเวอร์ชันเก่าได้
Version Control ที่มีประสิทธิภาพด้วย SvnX
หากไม่ใช้ Version Control ทุกการเปลี่ยนแปลงเป็น Final ไม่กลับหลัง ไม่ Undo การเปลี่ยนแปลงภายหลังได้ การใช้ SvnX บน Mac ช่วยแก้ปัญหา ให้วิธีง่ายและมีประสิทธิภาพติดตาม Code changes
SvnX ค่อนข้าง Outdated หากไม่เหมาะ심 ใช้ Alternative เช่น Versions แทนได้ ก่อนวิ่งต้องเดินก่อน: หากอยากเรียน Coding มี Services/Apps มาช่วย