Quick CVS

อัดรูปดิจิตอล ทำสมุดภาพของคุณเอง
รอรับได้. ท่องเที่ยว แต่งงาน ฯลฯ

www.tanabutr.co.th/photobook


ทำ CVS ใช้ที่เครื่องตัวเอง

  1. สร้างไดเรกทอรีสำหรับ repository สมมติว่าให้เป็น $HOME/repository และตั้งค่าตัวแปรสภาพแวดล้อม CVSROOT.
    $ mkdir $HOME/repository
    $ echo export CVSROOT=$HOME/repository >> $HOME/.bash_profile
    $ source $HOME/.bash_profile
    
  2. สั่งคำสั่งเริ่มต้นใช้ cvs.

    $ cvs init
    

    แล้วจะมีไดเรกทอรี CVSROOT ในไดเรกทอรี $HOME/repository.

  3. เข้าไปในไดเรกทอรีที่มีรหัสต้นฉบับที่กำลังใช้งานอยู่. สมมติว่าเป็นไดเรกทอรี $HOME/work.
    $ cd $HOME/work
    $ cvs import myproject yourname start
    

    จะเป็นการนำไฟล์ต่างๆที่อยู่ใน work เข้าไปไว้ใน repository โดยใช้ชื่อโมดูลเป็น myproject. ตรงนี้จะตั้งชื่อเป็นอะไรก็ได้. ตรง yourname คือ vendor tag สมมติว่าให้เป็นชื่อตัวเอง. start เป็น relase tag ให้เป็นชื่อ start.

  4. ลบไดเรกทอรี $HOME/work ทิ้งได้เพราะเราได้ import ไฟล์ต่างๆเข้าไปแล้ว.
  5. ตอนนี้เราก็จะลอง check out จาก repository ที่สร้างไว้. ก่อนอื่นต้องกำหนดไดเรกทอรีที่จะไว้รหัสที่เราจะ checkout ออกมาก่อน. สมมติว่าเป็น $HOME/projects.

    check out โมดูลเพื่อเอาไฟล์ที่อยู่ในโมดูลนั้นมาแก้ไขดังนี้.

    $ cvs co myproject
    

    เสร็จแล้วก็จะได้ไดเรกทอรี myproject อยู่ใต้ไดเรกทอรี $HOME/projects อีกที. ในไดเรกทอรี $HOME/projects/myproject เป็นไดเรกทอรีที่มีไฟล์ที่เรา check out มา. สามารถแก้ไขไฟล์, ทดสอบ, คอมไพล์ ไฟล์ต่างๆที่อยู่ในนั้นได้. ถ้าแก้ไขไฟล์เรียบร้อยแล้วต้องการบันทึกการเปลี่ยนแปลงเข้าไปใน repository ก็ให้ check in.

  6. check in ด้วยคำสั่งแบบนี้
    $ cvs commit
    

    แล้ว cvs จะตรวจสอบดูว่าไฟล์ไหนมีการแก้ไข, สมควรนำเข้าไปใน repository แล้วก็จะบันทึกใน repository ถ้าไม่มีปัญหาอะไร. ส่วนไฟล์ชั่วคราวที่เกิดขึ้นและไม่เกี่ยวข้องก็จะไม่ทำอะไร.

  7. สมมติว่าเราเพิ่มไฟล์ใน myproject ชื่อ new.c. จะบันทึกเก็บใน rspository ให้ใช้คำสั่ง add
    $ cvs add new.c
    $ cvs commit
    
  8. สมมติว่าเราต้องการเอาไฟล์ old.c ที่อยู่ในโมดูลออกจาก myproject ให้ลบไฟล์นั้นก่อนแล้วสั่งคำสั่ง remove

    $ rm old.c
    $ cvs remove old.c
    $ cvs commit
    

ถ้ามีหลายโปรเจคก็ทำเหมือนกัน. cvs ก็จะเก็บไว้ใน repository เดียวกันให้ครับ.

แหล่งข้อมูลเพิ่มเติม