  CVS ̾߱

  (Woohyun JANG), louis@mizi.co.kr
  1999 5 5

     ۾   ϰ   ִ CVS 
  ̾߱⸦ ϰ ֽϴ.  ۿ  CVS   
  , ϰ ϴ  ϰ ֽϴ. ۿ 
  ǻ    ֽñ ٶϴ. (
  δ   𸣰,  ̱ۿ ڼ  ٷ
   ʽϴ.  ڼ  Ͻô е CVS޴
  Ͻñ ٶϴ. κ CVS ϰ  Ʈ
  ҽ ޾ƿ ؼ, ϰԳ ϰ ; Դϴ. ׷
  е鿡Դ   ε ϸ ϴ. Ȥ  ٰ
    ε  ۿ ִٸ   ּ.)
  ______________________________________________________________________

  

  1. Ϲ 
     1.1 CVS ?
     1.2 ˾ƾ  

  2. CVS ϱ
     2.1 ó
     2.2 Login
     2.3 Check out
     2.4 Update
     2.5 Commit
     2.6 Diff
     2.7 Cliean

  3. CVS ϱ

  ______________________________________________________________________

  1.  Ϲ 

  1.1.  CVS ?

  CVS ҽ   ִ ýԴϴ.   ٽ Ǯ
  ϸ, α׷( α׷ ʿ ϴ.  CVS
  Ȩ 쿡 CVS ؼ   ִٰ մϴ.)  ϴ
    ϵ ϰ Ǵµ  ϵ   ִ
  ýԴϴ.  ȥ Ҷ ϰ   , 
   ÿ ϳ α׷    մϴ.

  1.2.  ˾ƾ  

   ˾ƾ   ִ° ƴ ˾Ƶδ°   ɶ
  ִ  ֽϴ. ǥ  revision( ۿ 
  ؼ  ״  ϰڽϴ. ϰ  ϸ бⰡ
  ƴ󱸿.) ȣ ֽϴ.

   ϵ ڽ revision ȣ ϴ.  ȣ 1.1,
  1.2.3.2  ׻ ¦ ڸ "."  ° ˴ϴ.
      revision ȣ 1.2.3.2 ,   
   ߴٸ    revision ȣ 1.2.3.3  ˴ϴ. 
   ڰ ϳ մϴ.

   α׷ ϴ  ϳ ߽ɵǴ  帧 ְ, ̿ʹ
    κп   帧   ֽϴ. ̷ ߽ɵǴ
   帧 main trunk ϸ, ̿ʹ ٸ  κп 
  帧 branch  մϴ. Ϲ branch  main
  trunk revisionȣ ڸ ڸ ٿ մϴ. Ʒ׸
        Դϴ.  (Ʒ׸ CVS
  ޴ <http://www.gnu.org/manual/cvs/index.html> Խϴ.)

                                                       +-------------+
                            Branch 1.2.2.3.2 ->        ! 1.2.2.3.2.1 !
                                                     / +-------------+
                                                    /
                                                   /
                   +---------+    +---------+    +---------+    +---------+
  Branch 1.2.2 -> _! 1.2.2.1 !----! 1.2.2.2 !----! 1.2.2.3 !----! 1.2.2.4 !
                 / +---------+    +---------+    +---------+    +---------+
                /
               /
  +-----+    +-----+    +-----+    +-----+    +-----+
  ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 !      <- The main trunk
  +-----+    +-----+    +-----+    +-----+    +-----+
                  !
                  !
                  !   +---------+    +---------+    +---------+
  Branch 1.2.4 -> +---! 1.2.4.1 !----! 1.2.4.2 !----! 1.2.4.3 !
                      +---------+    +---------+    +---------+

   ˾Ƶ־  ߿ repository ֽϴ. (ѱ۷ ϸ 
   ǰ. ׳ repository ڽϴ.) repository 
  ؼ   ҽ Ƶ ̶ Ͻø ˴ϴ. 
  ̻ 𸨴ϴ.  ˸ Ӹ Ŀ. ^^

  2.  CVS ϱ

  2.1.  ó

   ϱ   ڴ   Ȳ̸,   ¿
    CVS ؾ Ѵٰ    ϰڽϴ.  ڴ
  α׷̸, Qt 2.0߿  ϴ. ׷   Qt
  ҽ  Ѻ , ϴٸ ҽ ؼ ݿ ϰ
  ͽϴ. ׷ Qt  Ȩ ϴ. ׷ " ϰ
  ;"   ,  Qt  Ʒ  
  Խϴ.

  ...
  Please use CVS. CVSROOT is :pserver:xxx@cvs.troll.no:/cvs .
  ...

  ? CVS ? ׸  CVSROOT ?  ?

  2.2.  Login

  CVS    ó Concurrent Version System Դϴ.
  -.-;

  ׷ CVSROOT ı? ٷ  ̾߱ ߴ repositoryԴϴ.
  ׳ ׷ Ͻø ˴ϴ.  ı? ׳ ȯ溯 CVSROOT
  Ͻðų, cvs Ͻ  Ͻø ˴ϴ.

  export CVSROOT=:pserver:xxx@cvs.troll.no:/cvs  (bash, ksh)
  setenv CVSROOT :pserver:xxx@cvs.troll.no:/cvs  (csh )

  cvs -d :pserver:xxx@cvs.troll.no:/cvs cvs-command

   ϼž   CVS αϴ Դϴ.  α Ʒ 
  ԷϽø ˴ϴ.

  cvs login

    CVS α ûϰ,   йȣ 䱸ϴ
  쵵 ֽϴ.     쿡 йȣ
  䱸մϴ. йȣ ϵ  ǹǷ  ϼ̴ٰ
  ⿡ Էϸ ˴ϴ.

  ̷ ѹ Էµ йȣ CVSROOT Բ $HOME/.cvspass Ͽ
   ǹǷ  Է ʿ䰡 ϴ.

  2.3.  Check out

   ϴµ  ٰ ϰ,    
  ϰڽϴ. 켱   ؾ   repository ִ ҽ
   Դϴ. ̰ check out ̶ մϴ. 
  ϴ. ׳ Ʒ  ԷϽø ˴ϴ. ( 
  α׷ ̸ qt մϴ.)

  cvs co qt

    ԷϿ check out ġ qt 丮 Ʒ ҽ
   ֽϴ. ٵ ҽ ̿ܿ CVS 丮 ֽϴ. ̰
  CVS ϴ 丮 ̱     ų,
   .   å  ϴ.

  2.4.  Update

   check out ҽڵ带 µ, ڱ  ϴ. 
  óھ ״  ڱ   °ſ.  
  غ ߴµ... ~ ޾! . !  Ƽ ġ
        óڽ(  ƴմϴ. ^^)
  󱼵    ´ٴ   պ
  ߽ϴ. ~ ׷  귯ϴ.

  ĥ   ܼ ҽڵ带    ڸ
  ɾҽϴ.  ̷  . ĥ  ׷̵尡
  Ǿ! ׷! ߾. ٽ ޾ƿ°ž! -.-;  ҽڵ尡 
  ȵǰ,   ִ 쿡    ҽڵ尡
  û ũ,  ָָ ִ 쿡  ٽ check
  out ұ? ̶ update ϸ ˴ϴ.  updateϰ 
  丮  ܼ Ʒ  ԷϽø ˴ϴ.

  cvs up

   qt ٲ ҽ  ޾ƿ qt丮 ϸ Ǹ,
  װ ƴ϶ example ٽ ޾ƿ ʹٸ qt丮 Ʒ ִ
  example丮   Էϸ ˴ϴ. ϳ ϸ
  updateϷ ̸  Ͻø ˴ϴ. ٸ 
  丮 ü updateմϴ. up ϸ Ʒ  ޽
  ϸ鼭 update մϴ.

  ? Makefile
  cvs server: Updating .
  ...
  U htable.C
  U htable.h
  ...

   ְ ž   ù° Į  statusԴϴ.
  ⿡   ĺ ѱڷ Ÿµ ⿡ ̴
  U  Updated ǹԴϴ.  ڽ  ϵũ ִ ҽ
   repository ִ   Ƽ ٽ ޾ƿԽϴ.
  ׷ ޴󿡼    ϰ ,    
  δ repository ִµ   ϵũ ° U
  ԰, ׷ ʰ repository ִ   Ƽ ٽ ޾ƿ
  쿡 P Խϴ. ϰ   U, P 쿡
   repository ִ ҽ Դٰ Ͻø ˴ϴ.

  ׷ ù° ٿ ִ ? ? ̰ repository  ε
  ϵ忡 ִ ̶ Դϴ. ⿡ Makefile ÿ
   ̱  ׷ϴ. ׳ Ͻø ˴ϴ.

  ̰ ̿ܿ ߿ statusδ M C ֽϴ. M repository
  ȭ µ ڽ  ũ ִ ҽ  Դϴ. 
  ڰ  ߰ϱ ؼ ҽ  Դϴ.  
  ߿ 帱 Commit repository  Žų  ֽϴ. M
  ̿ܿ ؼ   status C ֽϴ. C Conflict ǹ̷,
   ũ ϵ ߰ repository 뵵    ĥ
   °Դϴ.   κ   ̻ ڰ ģ
  Դϴ.  쿡 update   ٽ ؼ Commitؾ
  մϴ. ̰ ܿ     Ƿ ʿ 
  CVS޴ <http://www.gnu.org/manual/cvs/html_chapter/cvs_toc.html>
  оñ ٶϴ.

  2.5.  Commit

  ޾ƿ ҽ   ߽ϴ. ׷   §! ϰ
  Ǵµ  ̻ϴ. ׷  ҽ м߽ϴ.
  ׷  ã. ϴ  Ǿ! -.-; (   5
  5  ε,  ϰ ȸ翡 ־   
  ֽϴ. ظ  ֽñ...)

   Ǵ κ ϰ   repository  commit
  ϸ ˴ϴ. commitϱ  ݵ update  ñ ٶϴ.
   ƴ   ٽ ҽ ٲ  ֽϴ. update ؼ
  conflict  쿡 ٸ ġ ٽ commit õϼž մϴ.
  commitϴ  Ʒ ϴ.

  cvs ci filename

    ϸ ڱ  ȭ ϴ. ٷ ģ 
   ߴ°̴ϴ.  ڽ     ϰ
  ͸   commit۾ ˴ϴ. ޽  ø
  ڽ  ҽ   ϴ   ֽϴ.

      ߴ Ͱ  ȵ 찡 ֽϴ.
  cvs ⺻ CVSEDITOR ȯ溯 ִ Ȯ   
    ͸ , ٸ EDITORȯ溯 մϴ.
  EDITORȯ溯 ٸ vi մϴ.  ͸ 
  ʰ, cvs -mɼ ϼż change   ֽϴ.

  cvs ci -m " ݹ ߴ. ~" filename

  2.6.  Diff

    쿡 CVS бѸ ִ 찡 ϴ. 
  쿡 CVS  ִ   ؼ ٲﳻ
   ϴµ ̶   ִ ɾ diff ֽϴ. 
    driver.c ̸,   diff  Ʒ 
  ԷϽø ˴ϴ.

  cvs diff driver.c > driver.c.diff

   丮 ü diff ?  ̸ Ͻø
  ˴ϴ.

  diff  쿡 ̿Ͱ 뵵    cvs
  repository   Ȯϰ  ϰ ˴ϴ.

  2.7.  Cliean

  ̻ qt   ׸ ϰ ʹٸ  ұ? 
    qt丮  ˴ϴ. -.-; ϱ 
  ̵ ̷ մϴ. ^^

   õ δ release    ֽϴ.  Ʒ
   Է     ִ ãְ, 丮 뵵
  ֹǷ ϰ Ͻ  ֽϴ. (    
  ϴ.  ޴󿡼 ,    ѹ
  ϴ.   rmɾ ֿմϴ. ^^)

  cvs release -d qt

  3.  CVS ϱ

    ϴ.

