ตอนนี้มี project ที่ต้องทำอยู่ 4 - 5 ตัว... เริ่มมึนกับ code และ version ทำอย่างไรดี
VCS คือคำตอบ แต่ตัวไหนดี ยังมึนๆอยู่ จะเอามาใช้หลายทีแล้วไม่มีโอกาศสักที (คราวที่แล้ว source code ก็เกือบหาย) วันนี้ก็เริ่มมองๆ VCS อีกรอบ ลองมาหาข้อมูลเก่าๆ

ก่อนอื่น คุณ IWAT เคยแนะนำผมว่า


Version Control System - VCS
คือระบบการจัดการระบบ version ของไฟล์ครับ ... เป็นแค่แนวทาง ต้อง implement เพื่อใช้จริงอีกครับ

Revision Control System - RCS
อันนี้คนแก่เค้าใช้กัน  เป็น implementation รุ่นแรก ๆ ของ VCS ครับ และเป็นต้นตระกูลของ CVS ทุกวันนี้

Concurrent Version System - CVS
เป็น implementation อีกตัว พัฒนาต่อจาก RCS ครับ ... ด้วยนิสัยของ GNU และญาตสนิท เขานิยมกันมากที่จะตั้งชื่อโปรแกรมตัวเองให้คล้าย ๆ กับแนวคิดที่ implement มา ทำให้เราจำกันมั่วซั่วไปหมด เช่น
CVS ซึ่งเป็น implementation ของ VCS, หรือ Samba ซึ่งเป็น implementation ของ SMB/CIFS

Subversion - SVN
เป็น VCS อีกตัวที่เพิ่งเกิดใหม่ แก้ปัญหาหลาย ๆ อย่างของ CVS แต่ไม่ได้มาแทนที่ แต่คนส่วนใหญ่นิยมขนข้าวของทั้งหมดที่เคยอยู่ใน CVS มาไว้ที่นี่ซะอย่างนั้น

จริง ๆ ยังมี implementation อีกหลายตัวครับ เช่น Microsoft Visual Source Safe (VSS) หรือ Starteam

ทั้งหมดนี้เป็น VCS แต่ว่า VCS เองก็สามารถใช้งานได้หลายแบบ
- command line, เรียกใช้งานผ่าน terminal โดยตรง
- HTTP module อย่างที่ svnmod ที่ไปติดตั้งบน Apache
- Standalone Server เช่น svnserve ของ SVN หรือ pserver ของ CVS
- SSH tunnel ส่วนใหญ่จะรองรับ ... เหมือนกับ SSH เข้ามาใช้ command line อีกที

Client ก็มีหลายแบบ ถ้า Command line ก็คงพวก Secure CRT, PuTTY สำหรับ HTTP Module ถ้าจะเข้าไปอ่านเฉย ๆ ใช้ Browser ได้ครับ แต่ถ้าจะทำงานต่าง ๆ ต้องพึ่ง Client ซึ่ง Client ใช้กับแนวทางที่เหลือทั้งหมด

Client นิยมทำเป็น GUI ซึ่งมีหลายค่าย เช่นตระกูล Tortoise จะทำทั้ง SVN และ CVS แต่คนทำคนละคนกัน (แค่ขอแนวคิดมาใช้) หรือของคนสร้าง VCS นั้น ๆ เช่น MSFT เป็นต้น


อืมส์ ตอนนี้ก็คงมองไปที่ VCS อย่าง SubVersion และ client คู่บารมีอย่าง TortoiseSVN

คลังความรู้ - กระทู้นาริสา & other links
คุณคิดว่า CVS Client ตัวไหนอะเจ๋งที่สุด
มีใครใช้งาน CVS อยู่บ้างไหมครับ, อยากใช้ แต่ไม่รู้จะเริ่มยังงัย
ตัวอย่างการใช้งาน CVS เบื้องต้น
ศึกษาตัวไหนดีครับ CVS หรือ SVN
FAQ: CVS คืออะไร
การใช้งาน CVS (Control Version System) โดย UP1