· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
CVS/FAQ

CVS »ç¿ë¿¡ ´ëÇÑ FAQ ¸ðÀ½

Çѱ۷ΠµÈ CVS ¹®¼­µéÀÌ ¿©·µ ³ª¿Í ÀÖÁö¸¸ ²À ÇÊ¿äÇÑ Á¤º¸µéÀÌ ¿©±âÀú±â Èð¾îÁ® ÀÖ°í ü°èÀûÀÌÁö ¾ÊÀº °æ¿ì°¡ ÀÖ¾î, óÀ½ CVS¸¦ Á¢ÇÏ´Â ºÐµéÀÌ ºñ½ÁÇÑ Áú¹®À» ¹Ýº¹ÀûÀ¸·Î ÇÏ°Ô µÇ´Â µí ÇÕ´Ï´Ù. ¿ÀǼҽº ÇÁ·ÎÁ§Æ® °³¹ß¿¡ Âü¿©ÇÏ°íÀÚ ÇÏ´Â ºÐµé¿¡°Ô ÇÊ¿äÇÑ Á¤º¸¸¦ ¸ð¾ÆºÃÀ¸¸é ÇÕ´Ï´Ù. CVS »ç¿ëÇϸ鼭 ÀÌ °£´ÜÇÑ °É ¸ô¶ó¼­ Âü °í»ýÇß¾úÁö ½ÍÀº°Ô ÀÖÀ¸¸é ¾ðÁ¦µçÁö Ãß°¡ÇØ ÁÖ¼¼¿ä.

¸¶Ä§ KLDPconf ÁÖÁ¦ ÀÀ¸ð¿¡µµ ºñ½ÁÇÑ ¾ê±â°¡ ³ª¿Í¼­ »ý°¢³­ ±è¿¡ ÀÏ´Ü ½ÃÀÛÇØ º¾´Ï´Ù.

Áú¹®¸¸ Àû¾îÁּŵµ ¹°·Ð ÁÁ½À´Ï´Ù.

Contents

1. Áú¹®°ú ´ä
1.1. CVS¸¦ »¡¸® ¹è¿ö¼­ ½á¾ßÇϴµ¥ ¾î¶±ÇÏÁÒ?
1.2. CVS°¡ ¹¹¿¹¿ä? / ¾îµð¿¡ ¾²´Â ¹°°ÇÀΰ¡¿ä?
1.3. CVS¸¦ ½ÇÁ¦·Î °³¹ß °úÁ¤¿¡ »ç¿ëÇÏ´Â ÇÁ·ÎÁ§Æ®°¡ ÀÖ³ª¿ä?
1.4. CVS¸¦ ¾²¸é ±×·¡¼­ ¹¹°¡ ÁÁÀº°¡¿ä?
1.5. RCS´Â ¶Ç ¹¹ÁÒ? / RCS ÇÏ°í´Â ¹¹°¡ ´Ù¸¥°¡¿ä?
1.6. SourceSafe¿Í´Â ¹¹°¡ ¾î¶»°Ô ´Ù¸¥°¡¿ä?
1.7. CVS¿¡¼­ .......ÇÑ Á¡ÀÌ ¸¶À½¿¡ µéÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ÇÁ·Î±×·¥Àº ¾ø³ª¿ä?
1.8. Windows¿¡¼­ ¾µ ¼ö ÀÖ´Â CVS Ŭ¶óÀ̾ðÆ®°¡ ÀÖ³ª¿ä?
1.9. Windows¿¡¼­ ¾µ ¼ö ÀÖ´Â CVS ¼­¹ö°¡ ÀÖ³ª¿ä?
1.10. CVSROOT ȯ°æ ¼³Á¤À» ¾î¶»°Ô ÇؾßÇϳª¿ä?
1.11. Anonymous checkout ÀÌ ¹º°¡¿ä? ¾î¶»°Ô ÇÏÁÒ?
1.12. ·Î±×ÀÎÀ» Ç϶ó´Âµ¥ ¾î¶»°Ô Çϳª¿ä?
1.13. ÀúÀå¼Ò(Repository)ÀÇ µð·ºÅ丮 ±¸Á¶¸¦ ¾Ë°í ½Í½À´Ï´Ù.
1.14. »õ Repository´Â ¾î¶»°Ô ¸¸µå³ª¿ä?
1.15. »õ ÇÁ·ÎÁ§Æ®´Â ¾î¶»°Ô ¸¸µå³ª¿ä?
1.16. checkoutÀº ¾î¶»°Ô Çϳª¿ä?
1.17. checkoutÇÑ ÀÌÈÄ¿¡ Repository¿¡¼­ ¹Ù²ï ³»¿ëÀ» È®ÀÎÇÏ°í ½Í½À´Ï´Ù.
1.18. ³»°¡ ÀÛ¾÷ÇÑ ³»¿ëÀº ¾î¶»°Ô ¾Ë ¼ö ÀÖ³ª¿ä?
1.19. Áö±Ý±îÁö ÀÛ¾÷ÇÑ ³»¿ëÀ» checkinÇÏ°í ½Í½À´Ï´Ù.
1.20. Conflict°¡ »ý°å½À´Ï´Ù! ¾î¶»°Ô ÇؾßÇϳª¿ä?
1.21. ¼Ò½º¿¡¼­ ÀÌ ºÎºÐÀ» ´©°¡ ¸¸µç °ÇÁö Á» ¾Ë¾Æ¾ß°Ú½À´Ï´Ù.
1.22. ÆÄÀÏÀ» Ãß°¡ÇÏ°í ½Í½À´Ï´Ù.
1.23. ÆÄÀÏÀ» »èÁ¦ÇÏ°í ½Í½À´Ï´Ù.
1.24. ÆÄÀÏ À̸§À» ¹Ù²Ù°í ½Í½À´Ï´Ù.
1.25. µð·ºÅ丮¸¦ Áö¿ì°í ½Í½À´Ï´Ù
1.26. ½Ç¼ö·Î À߸øµÈ ¼Ò½º¸¦ checkinÇØ ¹ö·È½À´Ï´Ù. ¾î¶»°Ô °íÃľßÇϳª¿ä?
1.27. checkout ¹ÞÀº ¼Ò½º¸¦ ÀÌÁ¦ ±×¸¸ Áö¿ö¹ö¸®°í ½Í¾î¿ä.
1.28. ÇöÀç±îÁö ÀÛ¾÷ ³»¿ªÀ» º¸°í ½Í½À´Ï´Ù.
1.29. revisionÀÌ ¹º°¡¿ä?
1.30. tag°¡ ¹º°¡¿ä?
1.30.1. tag´Â ¾î¶»°Ô ºÙÀ̳ª¿ä?
1.31. branch´Â ¶Ç ¹º°¡¿ä?
1.31.1. branch´Â ¾î¶»°Ô ¸¸µéÁÒ?
1.31.2. merge´Â ¾î¶»°Ô ÇÏ´Â °Ì´Ï±î?
1.32. °ú°Å ƯÁ¤ ½ÃÁ¡¿¡ ¼Ò½º°¡ ¾î¶®´ÂÁö º¸°í ½Í½À´Ï´Ù.
1.33. CVS ¼­¹ö¿¡ ¾î¶² moduleÀÌ ÀÖ´ÂÁö ¾î¶»°Ô ¾Ë ¼ö ÀÖ³ª¿ä?
1.34. CVSROOT/modules¿¡ ¸ðµâ µî·ÏÀº ¾î¶»°Ô Çϳª¿ä?
1.35. CVSROOT/passwd¿¡ »ç¿ëÀÚ¸¦ ¾î¶»°Ô Ãß°¡Çϳª¿ä?
1.36. ÀÍ¸í »ç¿ëÀÚ´Â ¾î¶»°Ô µî·ÏÇϳª¿ä?
1.37. CVS°¡ /root ¾Æ·¡ ÆÄÀÏÀ» ãÀ¸·Á µì´Ï´Ù! ÀÌ°Ô ¹º°¡¿ä?
1.38. Repository¸¦ ´Ù¸¥ ±â°è·Î ¿Å±â°í ½Í½À´Ï´Ù.
1.39. CVS ¼­¹ö¿¡ ÀÖ´Â repository¸¦ ¹Ì·¯¸µÇÒ ¼ö ¾ø³ª¿ä?
1.40. moduleµéÀ» °øÀ¯ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖ³ª¿ä?
1.40.1. °£´ÜÇÑ ¹æ¹ý
1.41. Source file¿¡ °­Á¦·Î revisionÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ³ª¿ä ?
1.42. CVSµµ VSSó·³ ¹èŸÀû ¶ô(Exclusive Lock)À» °É¾î ³õ°í »ç¿ëÇÒ ¼ö ÀÖ³ª¿ä?
1.43. Repository¿¡ Attic À̶õ°Ô ÀÖ´øµ¥ ÀÌ°Ç ¹º°¡¿ä?
1.44. Unicode fileÀ» Áö¿øÇÏÁö ¸øÇϴ°¡¿ä?
1.45. ÀÌ¹Ì Text·Î ¾÷·Îµå µÈ ÆÄÀÏÀ» Binary·Î ¹Ù²Ü ¼ö Àִ°¡¿ä?
1.46. ÀÌ¹Ì Binary·Î ¾÷·Îµå µÈ ÆÄÀÏÀ» Text·Î ¹Ù²Ü ¼ö Àִ°¡¿ä?
1.47. ·Î±×¸¦ À߸ø Àû¾ú´Âµ¥ °íÄ¥ ¼ö ¾øÀ»±î¿ä?
1.48. Tag¿¡ comment¸¦ ºÙÀ̴°ÍÀº °¡´ÉÇÑ°¡¿ä
1.49. Unknown command ¶ó´Â ¿¡·¯°¡ ³³´Ï´Ù.
1.50. Ç×»ó ÃֽŹöÀüÀÇ ¼Ò½º¸¦ À¯ÁöÇÏ°í ½Í¾î¿ä
1.51. ÀÌÀü¹öÀüÀ¸·Î µÇµ¹¸®°í ½Í¾î¿ä(Rollback)
1.52. CVS¸¦ ¾µ±î¿ä SubversionÀ» ¾µ±î¿ä?
2. help »ç¿ë¹ý
3. ¿ë¾î
4. ¹®¼­¸¦ ¸¸µé¸é¼­
5. °ü·Ã ÀÚ·á


1. Áú¹®°ú ´ä

1.1. CVS¸¦ »¡¸® ¹è¿ö¼­ ½á¾ßÇϴµ¥ ¾î¶±ÇÏÁÒ?

  1. ¿ì¼± DocbookSgml/CVS-KLDP ¸¦ º¸°í Çѹø ±×´ë·Î µû¶óÇØ º¸¼¼¿ä.
  2. ¾Æ·¡ Á¤¸®ÇصР´Ù¸¥ Çѱ۷ΠµÈ ¹®¼­µéÀ» Æ´Æ´È÷ ÀÐ¾î º¾´Ï´Ù.
  3. CVS¸¦ ²ÙÁØÈ÷ ½á¾ß Çϰųª ¿©·¯°¡Áö Á¤¼®ÀûÀÎ »ç¿ë ¹æ¹ýÀ» ÀÍÈ÷°í ½Í´Ù¸é [http]CVS-BestPractices ¹®¼­¸¦ Á¤µ¶ÇϽñ⸦ ±ÇÇÕ´Ï´Ù.
  4. Å« ¿ÀǼҽº ÇÁ·ÎÁ§Æ®¿¡¼­ ¸¹Àº °³¹ßÀÚµéÀÌ °°ÀÌ ÀÛ¾÷ÇÒ ¶§ ¼Ò½º ¹öÀü ÄÁÆ®·ÑÀÌ ¾î¶² ¹æ½ÄÀ¸·Î ¿î¿µµÇ´ÂÁö¿¡ °ü½É ÀÖ´Â ºÐµéÀº [http]The CVS BookÀ» Çѹø º¸½Ã±â ¹Ù¶ø´Ï´Ù.

1.2. CVS°¡ ¹¹¿¹¿ä? / ¾îµð¿¡ ¾²´Â ¹°°ÇÀΰ¡¿ä?

CVS(Concurrent Versions System)´Â ÇÁ·Î±×·¥ ¼Ò½º³ª ¹®¼­ ÆÄÀÏ ¹öÀü °ü¸®¸¦ ½±°Ô ÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁÖ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù. ƯÈ÷ ¿©·¯ »ç¶÷µéÀÌ µ¿½Ã¿¡ ÀÛ¾÷À» ÁøÇàÇؾßÇÏ´Â ±Ô¸ð°¡ Å« °³¹ß ÇÁ·ÎÁ§Æ®¿¡¼­ Å« È¿°ú¸¦ ±â´ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À̹ۿ¡µµ ²ÙÁØÈ÷ ¾÷µ¥ÀÌÆ®µÇ´Â ¹®¼­ °ü¸®¶óµç°¡ À¥»çÀÌÆ® °ü¸® µî¿¡ À¯¿ëÇÏ°Ô ¾µ ¼ö ÀÖ°í, ½ÉÁö¾î /etc ¾Æ·¡¿¡ µé¾î°¡´Â ¼³Á¤ ÆÄÀÏÀ» (¿ø°Ý) ¹é¾÷ÇÏ´Â ¿ëµµ·Îµµ »ç¿ë °¡´ÉÇÕ´Ï´Ù. :-)

µ¿½Ã¿¡ ¿©·¯ À¯´Ð½º Àåºñ¿¡¼­ ÀÛ¾÷ÇÏ´Â °æ¿ì µî¿¡ ½áº¼¸¸ÇÑ "Ȩµð·ºÅ丮 ¸ù¶¥ CVS¿¡ ³Ö¾î¹ö¸®±â"¿¡ ´ëÇÑ LinuxJournal ±â»ç([http]CVS homedir)µµ Çѹø ÀÐ¾î º¸¼¼¿ä.

1.3. CVS¸¦ ½ÇÁ¦·Î °³¹ß °úÁ¤¿¡ »ç¿ëÇÏ´Â ÇÁ·ÎÁ§Æ®°¡ ÀÖ³ª¿ä?

Àß ¾Ë·ÁÁø À¯¸íÇÑ ¿ÀǼҽº ÇÁ·ÎÁ§Æ®µéÀº ´ë°³ CVS³ª ÀÌ¿Í À¯»çÇÑ ¼Ò½º °ü¸® ½Ã½ºÅÛÀ» °®Ãß°í ÀÖ½À´Ï´Ù.

  1. OpenBSD : OS ¹× ½Ã½ºÅÛ Àüü ¼Ò½º¸¦ CVS·Î °ü¸®ÇÏ°í ÀÖ½À´Ï´Ù.
  2. OpenOffice : ÃÑ 3¸¸ ÆÄÀÏ¿¡ ´ë·« 9¹é¸¸ ¶óÀÎ ÀÌ»óµÇ´Â C++ Äڵ带 CVS·Î °ü¸®ÇÕ´Ï´Ù.
  3. Mozilla : Àüü ÇÁ·ÎÁ§Æ® ¹× ÆÄ»ý ÇÁ·ÎÁ§Æ® ¼Ò½º ÄÚµå ¹× ¸±¸®½º/ºê·£Ä¡ °ü¸®¸¦ CVS·Î ÇÏ°í ÀÖ½À´Ï´Ù.
  4. XFree86 : CVS ¸¦ »ç¿ëÇÏ´Â À¯¸í ÇÁ·ÎÁ§Æ®Áß ÇϳªÀÔ´Ï´Ù.
  5. Apache : À§¿Í µ¿ÀÏÇÕ´Ï´Ù.

1.4. CVS¸¦ ¾²¸é ±×·¡¼­ ¹¹°¡ ÁÁÀº°¡¿ä?

°ü¸®ÀÚ´Â :
  1. ÇÁ·ÎÁ§Æ® Âü¿©ÀÚ °³°³ÀÎÀÇ ÀÛ¾÷À» ¹æÇØÇÏÁö ¾ÊÀ¸¸é¼­ ÀüüÀûÀÎ ÁøÇà »óȲÀ» Á¶ÀýÇÒ ¼ö ÀÖ´Ù.
  2. ¸±¸®½ºµÈ ¹öÀü°ú °³¹ßÁßÀÎ ¹öÀüÀ» µÚ¼¯Áö ¾Ê°í ºÐ¸®Çؼ­ °ü¸®ÇÒ ¼ö ÀÖ´Ù.
  3. ÀÏÁ¤ ±â°£¿¡ ÁøÇàµÈ ÀÛ¾÷ ³»¿ë¿¡ ´ëÇÑ ¸®Æ÷Æ®¸¦ ½±°Ô ¸¸µé¾î ³¾ ¼ö ÀÖ´Ù.
  4. ÀÏÁ¤ ±â°£¿¡ ÁøÇàµÈ º¯°æ ³»¿ªÀ» È¿°úÀûÀ¸·Î ÃßÀûÇÒ ¼ö ÀÖ´Ù.
  5. ´©°¡ ÀÏÀ» ÇÏ°í ´©°¡ ³î°í ÀÖ´ÂÁö ½±°Ô °¨½ÃÇÒ ¼ö ÀÖ´Ù. :-)

°³¹ßÀÚ´Â :
  1. ¼Ò½º ¹é¾÷¿¡ ½Å°æ ¾µ ÇÊ¿ä°¡ ¾ø´Ù.
  2. »õ·Î¿î Äڵ带 ÀÛ¼ºÇÒ ¶§ ±âÁ¸ ÀÛ¾÷À» ¸ÁÄ¥ À§Çè ¾øÀÌ ½±°Ô ½ÃµµÇÒ ¼ö ÀÖ´Ù.
  3. ¹®Á¦°¡ »ý°åÀ» ¶§ ¾î´À ÁöÁ¡¿¡¼­ ¹®Á¦°¡ »ý°å´ÂÁö ½±°Ô ÃßÀûÇؼ­ ã¾Æ³¾ ¼ö ÀÖ´Ù.
  4. ¼Ò½º³ª ¹®¼­ ƯÁ¤ ºÎºÐ ÀÛ¾÷À» ´©°¡ ¾ðÁ¦ Çß´ÂÁö ½±°Ô ¾Ë¾Æ³¾ ¼ö ÀÖ´Ù.
  5. º°µµ ¸®Æ÷Æ® ÀÛ¼º ¹× ¹®¼­¸¦ ½á¾ßÇÏ´Â °Ç¼ö³ª ¾çÀÌ ¸¹ÀÌ ÁÙ¾îµç´Ù.
  6. ¸¾¸ÔÀ¸¸é º°·Î ÇÑ ÀÏÀÌ ¾ø¾îµµ ²ÙÁØÈ÷ ÀÏÇÏ°í ÀÖ´Â °Íó·³ ¼ÓÀÏ ¼öµµ ÀÖ´Ù. :-)

1.5. RCS´Â ¶Ç ¹¹ÁÒ? / RCS ÇÏ°í´Â ¹¹°¡ ´Ù¸¥°¡¿ä?

CVS´Â RCS¸¦ ±â¹ÝÀ¸·Î ÀÛ¼ºµÈ ¹öÀü °ü¸® ½Ã½ºÅÛÀÔ´Ï´Ù. ½±°Ô ¾ê±âÇÏÀÚ¸é RCS´Â ÆÄÀÏ ÇϳªÇϳª¿¡ ´ëÇØ ¹öÀü °ü¸®¸¦ ÇØÁÖ´Â °ÍÀÌ°í, CVS´Â RCS ±â´ÉÀ» ÀÌ¿ëÇØ ¼Ò½º³ª ¹®¼­¸¦ ÇÁ·ÎÁ§Æ®/¸ðµâ ´ÜÀ§·Î °ü¸®ÇÒ ¼ö ÀÖµµ·Ï È®ÀåÇÑ ÇÁ·Î±×·¥ÀÔ´Ï´Ù. ÀÌ¹Ì RCS¸¦ ¾²°í ÀÖ°í Àͼ÷ÇÑ ºÐÀÌ ¾Æ´Ï¶ó¸é ±»ÀÌ CVS¸¦ »õ·Î ¹è¿ï ÇÊ¿ä´Â ¾ø½À´Ï´Ù. RCS·Î ÇÒ ¼ö ÀÖ´Â ¸ðµç °ÍÀº CVS·Î ÇÒ ¼ö ÀÖÁö¸¸ ±× ¿ªÀº ¼º¸³ÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

CVS¿¡¼­µµ ÀϺΠ±â´É(ÀÌ¹Ì ½á ³õÀº ·Î±× ¼öÁ¤ µî)Àº RCS ¸í·ÉÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±Ã±ÝÇÏ´Ù¸é
 $ cvs -H admin
Çؼ­ RCS °ü·Ã ¸í·É¾î¸¦ Çѹø »ìÆì º¸¼¼¿ä.

1.6. SourceSafe¿Í´Â ¹¹°¡ ¾î¶»°Ô ´Ù¸¥°¡¿ä?

1.7. CVS¿¡¼­ .......ÇÑ Á¡ÀÌ ¸¶À½¿¡ µéÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ÇÁ·Î±×·¥Àº ¾ø³ª¿ä?


´ëüÇÒ ¸¸ÇÑ °Íµé... Non-Free

1.8. Windows¿¡¼­ ¾µ ¼ö ÀÖ´Â CVS Ŭ¶óÀ̾ðÆ®°¡ ÀÖ³ª¿ä?


CVS¸¦ óÀ½ »ç¿ëÇÏ´Â ºÐ¿¡°Ô´Â TortoiseCVS ¸¦ ±ÇÇÕ´Ï´Ù. Java¸¦ ÁÖ·Î »ç¿ëÇϰųª ÁÁÀº IDE ȯ°æÀ» ¿øÇϽô ºÐÀº Eclipse¸¦ Çѹø ½áº¸¼¼¿ä.

DeleteMe À©µµ¿ìÁî ȯ°æ¿¡¼­ CVS¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾ÆÁ÷ ½±°Ô Âü°íÇÒ ¸¸ÇÑ ¹®¼­°¡ ¾ø´Â °ÍÀ¸·Î ¾Ð´Ï´Ù. ´©±º°¡ À§¿¡ Á¦°¡ ¸µÅ©ÇØ µå¸° µÎ °³ÀÇ ³»¿ëÀ» ¹ÙÅÁÀ¸·Î Çؼ­ À©µµ¿ìÁî ȯ°æ¿¡¼­ CVS¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ´Ù·é º°µµÀÇ ¹®¼­¸¦ ¸¸µé¾î Áֽøé Âü ÁÁ°Ú³×¿ä. -- ±Ç¼ø¼±
WinCVS ÆäÀÌÁö¿¡¼­ »õ·Ó°Ô ¹®¼­¸¦ ÀÛ¼ºÇØ ³ª°¥±î ÇÕ´Ï´Ù. ¸¹Àº °ü½É°ú µµ¿ò ºÎŹµå¸³´Ï´Ù. -- ÂоÆ

1.9. Windows¿¡¼­ ¾µ ¼ö ÀÖ´Â CVS ¼­¹ö°¡ ÀÖ³ª¿ä?

1.10. CVSROOT ȯ°æ ¼³Á¤À» ¾î¶»°Ô ÇؾßÇϳª¿ä?

Local Repository
export CVSROOT=/usr/local/cvsroot

Remote Repository
export CVSROOT=:pserver:username@host.domain.com.:/var/cvsroot

Remote Repository w/ SecureShell
export CVS_RSH=ssh
export CVSROOT=:ext:username@host.domain.com.:/var/cvsroot

1.11. Anonymous checkout ÀÌ ¹º°¡¿ä? ¾î¶»°Ô ÇÏÁÒ?

ÀÍ¸í »ç¿ëÀÚ¿¡°Ô Àб⠱ÇÇÑÀ» Á¦°øÇÔÀ¸·Î½á ¼Ò½º³ª ¹®¼­ ÃֽŠ¹öÀüÀ» ¼Õ½±°Ô ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖµµ·Ï ÇØÁÝ´Ï´Ù. ƯÈ÷ ÄÄÆÄÀÏÀÌ ÇÊ¿ä¾ø´Â ½ºÅ©¸³Æ® ±â¹Ý ÇÁ·ÎÁ§Æ®¿¡ À¯¿ëÇÕ´Ï´Ù. [http]MoniWiki¸¦ ¿¹·Î µéÀÚ¸é
$ cvs -d:pserver:anonymous@cvs.kldp.net:/cvsroot/moniwiki login
$ cvs -z3 -d:pserver:anonymous@cvs.kldp.net:/cvsroot/moniwiki co moniwiki
¿Í °°ÀÌ ÇÏ¸é µË´Ï´Ù. ÀÌÈÄ¿¡ »õ ¹öÀüÀÌ ³ª¿À°Å³ª ÆÐÄ¡°¡ ¾÷µ¥ÀÌÆ® µÇ¸é
$ cvs update -dP
Çؼ­ °£´ÜÈ÷ ÃֽŹöÀüÀ¸·Î ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

1.12. ·Î±×ÀÎÀ» Ç϶ó´Âµ¥ ¾î¶»°Ô Çϳª¿ä?

$ cvs login
(Logging in to user@host.domain.com)
CVS password:

$ cat ~/.cvspass
:pserver:user@host.domain.com:/var/cvsroot XYZ123

$ cvs logout
(Logging out of user@host.domain.com)

1.13. ÀúÀå¼Ò(Repository)ÀÇ µð·ºÅ丮 ±¸Á¶¸¦ ¾Ë°í ½Í½À´Ï´Ù.

  /home/cvs/ .... (1)
  /home/cvs/CVSROOT/ .... (2)
  /home/cvs/CVSROOT/passwd .... (3)
  /home/cvs/CVSROOT/readers .... (4)
  /home/cvs/module_A/ .... (5)
  /home/cvs/module_B/ .... (6)

(1) $CVSROOT ·Î ÁöÁ¤µÇ´Â CVSÀÇ ÃÖ»óÀ§ µð·ºÅ丮

(2) CVS ÀúÀå¼ÒÀÇ ¼³Á¤ ÆÄÀϵéÀÌ ÀÖ´Â µð·ºÅ丮

(3) CVS »ç¿ëÀÚ ID¿Í ºñ¹Ð¹øÈ£

(4) CVS Àб⸸ °¡´ÉÇÑ »ç¿ëÀÚ

(5), (6) ÇÁ·ÎÁ§Æ® µð·ºÅ丮, ÇÁ·ÎÁ§Æ®¿¡ µû¶ó CVS ¸í·ÉÀ¸·Î »ý¼ºµË´Ï´Ù.

1.14. »õ Repository´Â ¾î¶»°Ô ¸¸µå³ª¿ä?

$ export CVSROOT=/home/user/cvsroot
$ cvs init
$ ls /home/user/cvsroot
CVSROOT/
$ ls /home/user/cvsroot/CVSROOT/
Emptydir/       config         editinfo,v  modules,v  taginfo
checkoutlist    config,v       history     notify     taginfo,v
checkoutlist,v  cvswrappers    loginfo     notify,v   val-tags
commitinfo      cvswrappers,v  loginfo,v   rcsinfo    verifymsg
commitinfo,v    editinfo       modules     rcsinfo,v  verifymsg,v

1.15. »õ ÇÁ·ÎÁ§Æ®´Â ¾î¶»°Ô ¸¸µå³ª¿ä?

$ ls proj/
README  a.c  a.h
$ cd proj/
$ cvs import -m "this is the project" proj VENDOR INIT
$ ls /var/cvsroot/
CVSROOT/  proj/
$ ls /var/cvsroot/proj/
README,v  a.c,v  a.h,v

1.16. checkoutÀº ¾î¶»°Ô Çϳª¿ä?

$ cd ~/work
$ cvs co proj
U proj/README
U proj/a.c
U proj/a.h

ƯÁ¤ ű׸¦ ÁöÁ¤Çؼ­ ¹Þ°í ½Í´Ù¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.
$ cvs co -r RELEASE_1_0_5 moniwiki

1.17. checkoutÇÑ ÀÌÈÄ¿¡ Repository¿¡¼­ ¹Ù²ï ³»¿ëÀ» È®ÀÎÇÏ°í ½Í½À´Ï´Ù.

¿ì¼± ³»¿ë È®ÀÎ (·ÎÄÿ¡ ¾Æ¹« º¯È­µµ ¸¸µéÁö ¾ÊÀ½).
$ cvs -n update

±×¸®°í ÀÌ»óÀÌ ¾øÀ¸¸é º¯°æµÈ »çÇ×À» ¹Þ¾Æ¿Â´Ù.
$ cvs update -dP

1.18. ³»°¡ ÀÛ¾÷ÇÑ ³»¿ëÀº ¾î¶»°Ô ¾Ë ¼ö ÀÖ³ª¿ä?

$ cvs diff
$ cvs diff -r BASE
$ cvs diff -r BASE -r HEAD
$ cvs diff -c -r1.6 prog.c
$ cvs diff -c -r1.6 -r1.7 prog.c

1.19. Áö±Ý±îÁö ÀÛ¾÷ÇÑ ³»¿ëÀ» checkinÇÏ°í ½Í½À´Ï´Ù.

$ cvs ci -m "fixed bug #12345"
$ cvs com[mit] prog.c
$ cvs ci -m "another bug fix in sheet.c" sheet.c

1.20. Conflict°¡ »ý°å½À´Ï´Ù! ¾î¶»°Ô ÇؾßÇϳª¿ä?

´çȲÇÏÁö ¸¶¼¼¿ä. ¼Ò½º³ª ¹®¼­¿¡¼­
<<<<
....
----
....
>>>>
ÀÌ·¸°Ô »ý±ä ºÎºÐÀ» ã¾Æ¼­ °íÄ£ ´ÙÀ½ ´Ù½Ã cvs update; cvs ci ÇÏ¸é µË´Ï´Ù.

1.21. ¼Ò½º¿¡¼­ ÀÌ ºÎºÐÀ» ´©°¡ ¸¸µç °ÇÁö Á» ¾Ë¾Æ¾ß°Ú½À´Ï´Ù.

$ cvs annotate a.c

1.22. ÆÄÀÏÀ» Ãß°¡ÇÏ°í ½Í½À´Ï´Ù.

$ cvs add newfile
$ cvs add newdir

1.23. ÆÄÀÏÀ» »èÁ¦ÇÏ°í ½Í½À´Ï´Ù.

$ cvs rm oldfile
$ cvs rm -f badfile
$ cvs rm -f olddir/badfiles
$ cvs rm olddir

1.24. ÆÄÀÏ À̸§À» ¹Ù²Ù°í ½Í½À´Ï´Ù.

´Ü¼øÈ÷ ÆÄÀÏÀ̸§¸¸ ¹Ù²Ù´Â ¹æ¹ý°ú history ±îÁö º¸Á¸ÇÏ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù (¸Å´º¾ó¿¡¼­ ¹ßÃë)

ÀϹÝÀûÀÎ ¹æ¹ý
$ mv old new
$ cvs remove old
$ cvs add new
$ cvs commit -m "Rename old to new" old new
ÀϹÝÀûÀÎ ¸¸Å­ ¹æ¹ýµµ ½±½À´Ï´Ù. ±âÁ¸ ÆÄÀÏÀÇ À̸§À» ´Ù¸¥ À̸§À¸·Î ¹Ù²ÛÈÄ ±âÁ¸ ÆÄÀÏÀ» cvs remove ·Î Á¦°ÅÇÏ°í

»õ·Î ¹Ù²ï À̸§ÀÇ ÆÄÀÏÀ» cvs add ·Î Ãß°¡ÇÕ´Ï´Ù. ±× ´ÙÀ½¿£ remove¿Í add ¸¸À¸·Î ÆÄÀÏÀÌ Áö¿öÁö°Å³ª Ãß°¡µÈ°ÍÀÌ Àû¿ëµÇÁö ¾ÊÀ¸¹Ç·Î

ÀÌ µÎÆÄÀÏÀ» commit ÇØÁà¾ß ÇÕ´Ï´Ù

È÷½ºÅ丮 ±îÁö º¸Á¸ÇÏ´Â ¹æ¹ý

¸ÕÀú ÀÌ ¹æ¹ýÀº CVS repository ¸¦ Á÷Á¢ Á¢±ÙÇϹǷΠÁ¶±ÝÀº À§ÇèÇÏ´Ù°í ¸Þ´º¾ó¿¡¼­ ¹àÈ÷°í Àֳ׿ä
$ cd $CVSROOT/module
$ mv old,v new,v
CVS repository ÀÇ ¼öÁ¤ÇÒ module µð·ºÅ丮¿¡¼­ À̸§À» º¯°æÇÒ ÆÄÀÏÀÇ À̸§À» Á÷Á¢ ¹Ù²Ù¾î ÁÖ´Â ¹æ¹ýÀÔ´Ï´Ù

ÀÌ°ÍÀº ¾Æ·¡¿Í °°Àº Àå´ÜÁ¡À» °¡Áö°í ÀÖ½À´Ï´Ù ÀåÁ¡
  • change log°¡ ±×´ë·Î º¸Á¸µË´Ï´Ù
  • revision ¿ª½Ã ±×´ë·Î À¯ÁöµË´Ï´Ù
´ÜÁ¡
  • module ÀÇ ¿¹Àü release ³ª tag ¸¦ ºÒ·¯¿À±â°¡ ½±Áö°¡ ¾Ê´Ù.
  • À̸§ÀÌ º¯°æµÇ¾ú´Ù´Â Á¤º¸°¡ log ¿¡ ³²Áö ¾Ê´Â´Ù
  • À§ÀÇ ÀÛ¾÷($CVSROOT ¿¡ µé¾î°¡ ÆÄÀÏÀ» Á÷Á¢ rename ÇÏ´Â..)À» ÇÏ´Â µ¿¾È ´©±º°¡ cvs ÀÛ¾÷À» ÇÑ´Ù¸é ³­Ã³ÇÑ ÀÏÀÌ »ý±ä´Ù.

1.25. µð·ºÅ丮¸¦ Áö¿ì°í ½Í½À´Ï´Ù

CVS¿¡¼­´Â µð·ºÅ丮 ´ÜÀ§·Î ÀúÀåÀ» Çϱ⠶§¹®¿¡ È÷½ºÅ丮¸¦ À¯ÁöÇϱâ À§Çؼ­´Â ±× µð·ºÅ丮°¡ ÇÊ¿äÇÕ´Ï´Ù. µû¶ó¼­ ÁøÂ¥·Î µð·ºÅ丮¸¦ Áö¿ï ¼ö´Â ¾ø½À´Ï´Ù. ´ë½Å update ½Ã¿¡ ¹ÞÁö ¾Ê´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ¸ÕÀú ÆÄÀÏÀ» Áö¿ì±â¸¦ ÀÌ¿ëÇؼ­ ÇØ´ç µð·ºÅ丮ÀÇ ÆÄÀÏÀ» ¸ðµÎ Áö¿ó´Ï´Ù. ±×¸®°í ³ª¼­ »óÀ§ µð·ºÅ丮·Î °¡¼­ ÇØ´ç µð·ºÅ丮¸¦ Áö¿ì°í ³ª¸é ´ÙÀ½ºÎÅÍ´Â cvs update -P ·Î ¾÷µ¥ÀÌÆ® Çϸé ÇØ´ç µð·ºÅ丮°¡ º¸ÀÌÁö ¾Ê°Ô µË´Ï´Ù.
cd unneeddir
rm *             # À̶§ CVS µð·ºÅ丮´Â ³²°ÜÁ® ÀÖ¾î¾ß ÇÕ´Ï´Ù.
cvs remove
cvs commit  # ¿©±â¼­ unneeddirÀÇ ¸ðµç ÆÄÀÏÀÌ Áö¿öÁý´Ï´Ù
cd ..
cvs remove unneeddir
cvs update -P

¶Ç´Â CVSROOT¿¡ °¡¼­ Á÷Á¢ µð·ºÅ丮¸¦ Áö¿ö ¹ö¸®´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ´ë½ÅÀÌ ¹æ¹ýÀº CVSROOT µð·ºÅ丮 °ü¸® ±ÇÇÑÀ» °¡Áö°í ÀÖ¾î¾ß ÇÏ°í, È÷½ºÅ丮±îÁö »ç¶óÁø´Ù´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù.

1.26. ½Ç¼ö·Î À߸øµÈ ¼Ò½º¸¦ checkinÇØ ¹ö·È½À´Ï´Ù. ¾î¶»°Ô °íÃľßÇϳª¿ä?


1.27. checkout ¹ÞÀº ¼Ò½º¸¦ ÀÌÁ¦ ±×¸¸ Áö¿ö¹ö¸®°í ½Í¾î¿ä.

$ cvs release -d proj

1.28. ÇöÀç±îÁö ÀÛ¾÷ ³»¿ªÀ» º¸°í ½Í½À´Ï´Ù.

$ cvs st[atus] [-v] [prog.c]
$ cvs log [prog.c]
$ cvs ann[otate] [main.c]

1.29. revisionÀÌ ¹º°¡¿ä?

ÆÄÀÏ ÇϳªÇϳª¿¡ ºÙ¾î ÀÖ´Â ¹öÀü ¹øÈ£¸¦ ¸»ÇÕ´Ï´Ù.
$ cvs st README
......
   Working revision:    1.1
......

1.30. tag°¡ ¹º°¡¿ä?

¿©·¯ ÆÄÀÏÀ̳ª ¸ðµâ¿¡ ¹öÀüÀ» Ç¥½ÃÇϱâ À§ÇØ ÇѲ¨¹ø¿¡ ºÙ¿©µÐ Ç¥½ÃÀÔ´Ï´Ù.
$ cd moniwiki/
$ cvs st -v README
......
   Existing Tags:
        moniwiki-1_1                    (branch: 1.1.2)
        RELEASE_1_0_5                   (revision: 1.1)
......

1.30.1. tag´Â ¾î¶»°Ô ºÙÀ̳ª¿ä?

$ cvs tag TAGNAME

1.31. branch´Â ¶Ç ¹º°¡¿ä?

  • Development Branch
  • Release Branch
  • Maintenance Branch

  • Vender Branch

  • (Main) Trunk
  • HEAD

¸Å´º¾ó¿¡¼­ ºô·Á¿Â ±×¸²

                                                     +-------------+
                          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 !
                    +---------+    +---------+    +---------+

1.31.1. branch´Â ¾î¶»°Ô ¸¸µéÁÒ?

$ cvs checkout project; cd project
$ cvs update foo.c
$ cvs tag release-1 .
$ cd ..; cvs release -d project

$ cvs checkout -r release-1 project
$ cvs release -d project

$ cvs rtag -b -r release-1 release-1-patches project
$ cvs checkout -r release-1-patches project
$ cvs commit -m "Fixed printf bug" foo.c
$ cd ..;  cvs release -d project

cvs¸¦ »ç¿ëÇÒ ¶§ Branch¸¦ Çؼ­ ¹öÁ¯À» ¸¸µé°í ¸ÞÀÎ ¹öÁ¯ÀÌ ¿Ã¶ó°¡¸é ´Ù½Ã ¸ÞÀιöÁ¯°ú ¸ÓÁö¸¦ ÇÏ°í.. µîÀÇ ÀÛ¾÷À» ¼öÇàÇÒ ¶§, ¸ÕÀú ºê·£Ä¡¸¦ ÇÒ ÆÄÀϵ鿡 ű׸¦ ´Þ¾ÆÁÖ°í ű׸¦ ±âÁØÀ¸·Î ºê·£Ä¡¸¦ ¸¸µå´Â °ÍÀÌ ÆíÇÑ °Í °°½À´Ï´Ù.

¸í·É¾î´Â ´ÙÀ½°ú °°½À´Ï´Ù.

cvs rtag -r arab -b arab_xxx ggg

ÀÌ·¸°Ô Çϸé ggg¶ó´Â ÇÁ·ÎÁ§Æ®¿¡¼­ arab űװ¡ ºÙÀº °ÍÀ» arab_xxx ºê·£Ä¡·Î ÀÛ¼ºÇÏ°Ú´Ù. ¶ó´Â Àǹ̰¡ µË´Ï´Ù. ű״ ¸ÕÀú ´Þ¾ÆÁÖ¾î¾ß ÇÏ°ÚÁö¿ä.

±×¸®°í ÅÂ±×¿Í ºê·£Ä¡´Â ´Ù¸£´Ù´Â Á¡À» ¹Ì¸® ¾Æ½Ã¸é ÁÁ°Ú°í.. ¸¸ÀÏ wincvs¸¦ »ç¿ëÇϽŴٸé graph¸¦ º¸½Ã°Ô µÇ¸é tag´Â °ËÁ¤»ö ¾ãÀº ¼± ºê·£Ä¡´Â ÆĶõ»ö ±½Àº ¼±À¸·Î ³ª´µ´Â °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù. --ÃÖ¼º¿ì / eatingstars.com

ºê·£Ä¡¸¦ ½±°Ô ¸¸µå´Â ¹æ¹ýÀÔ´Ï´Ù.
$ cvs tag -b BRANCHNAME
ÀÌ ¸í·ÉÀ» ½ÇÇàÇÑ ÀÛ¾÷¼Ò´Â ¾ÕÀ¸·Î ÀÌ ºê·£Ä¡·Î ÀÛ¾÷À» ÇÏ°Ô µË´Ï´Ù.

1.31.2. merge´Â ¾î¶»°Ô ÇÏ´Â °Ì´Ï±î?

$ cvs checkout -j release-1-patches project
$ cvs commit -m "Merged patch"

1.32. °ú°Å ƯÁ¤ ½ÃÁ¡¿¡ ¼Ò½º°¡ ¾î¶®´ÂÁö º¸°í ½Í½À´Ï´Ù.

ű׸¦ ºÙ¿© µÎÁö ¾Ê¾Ò´Ù¸é, ³¯ÀÚ¿Í ½Ã°£À» ½á¼­ ´ÙÀ½°ú °°ÀÌ ÀÛ¾÷ÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù.
$ cvs rtag -b -D "2000-01-01  00:00" first-millenium-release project
$ cvs get -D "3 month ago" myproj
$ cvs get -D "1999-11-23  09:00" oldproj

CVS°¡ Áö¿øÇÏ´Â ³¯ÀÚ/½Ã°£ ÁöÁ¤ Çü½Ä ¸î °¡Áö´Â ´ÙÀ½°ú °°½À´Ï´Ù.
"1971-04-30  04:35" (ISO format)
"30  Apr  1971  04:35" (Internet format)
"Tue Jan 25 08:45:45 UTC 2000"
"3/31/92 10:00:07 PST"
"January 23, 1987 10:05pm"
"22:00 GMT"
"1 month ago"
"2 hours ago"
"400000 seconds ago"
"last year"
"last Monday"
"yesterday"
"a fortnight ago"

1.33. CVS ¼­¹ö¿¡ ¾î¶² moduleÀÌ ÀÖ´ÂÁö ¾î¶»°Ô ¾Ë ¼ö ÀÖ³ª¿ä?

CVS¿¡¼­ Á¦°øÇÏ´Â ¸í·É¾î¸¦ ÅëÇØ Á¤»óÀûÀ¸·Î ¾Ë¾Æ³¾ ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø½À´Ï´Ù. :-( ±×·¸Áö¸¸ ²À ÇÊ¿äÇÑ °æ¿ì¿¡ ÈçÈ÷ »ç¿ëµÇ´Â ¹æ¹ýÀÌ ¸î °¡Áö ÀÖ½À´Ï´Ù.

  1. ÇÁ·ÎÁ§Æ® °ü¸®ÀÚ¿¡°Ô ¹°¾îº¸¼¼¿ä :-)
  2. ÇÁ·ÎÁ§Æ® °ü¸®ÀÚ°¡ ¼öµ¿À¸·Î CVSROOT/modules ¿¡ µî·ÏÇØ ³õÀ¸¸é ´ÙÀ½ ¸í·ÉÀ¸·Î moduleÀÇ ¸ñ·ÏÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
      $ cvs co -c
      
  3. Àß °ü¸®µÇ´Â ÇÁ·ÎÁ§Æ®¶ó¸é ÀϹÝÀûÀ¸·Î cvsweb À̳ª viewcvs °°Àº À¥ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÒ °ÍÀÔ´Ï´Ù. ±×°É ÀÌ¿ëÇϼ¼¿ä. ¸¸¾à ¾ø´Ù¸é ¼­¹ö °ü¸®ÀÚ¿¡°Ô ±×·± ÇÁ·Î±×·¥À» ¼³Ä¡ÇØ ´Þ¶ó°í ¿äûÇϼ¼¿ä.
  4. À§ ¹æ¹ýÀÌ ¸ðµÎ ¾ÈµÈ´Ù¸é, ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ ½á¼­ °£Á¢ÀûÀ¸·Î ¾Ë¾Æ³¾ ¼öµµ ÀÖ½À´Ï´Ù.
      $ cvsls.sh HEAD .
      
    #!/bin/sh

    # lists files and directories in the module(s) on the server without
    # checking them out

    # cvsls BranchName modules...
    # for main trunk use 'cvsls HEAD modules...'

    branch=$1; shift

    cvs rdiff -s -D '01/01/1971' -r $branch "$@"  2>&1 \
        | sed -e 's/File.//' \
                      -e 's/is new; current revision./      (/' \
                      -e 's/(\([0-9][\.0-9]*\)/(\1)/' \
                      -e 's/cvs server: Diffing/cvs server: Listing/'
      


1.34. CVSROOT/modules¿¡ ¸ðµâ µî·ÏÀº ¾î¶»°Ô Çϳª¿ä?

cvs co CVSROOT ÇÏ¿©¼­ modules ÆÄÀÏÀ» ¼öÁ¤ÇϽŠÈÄ¿¡ commit ÇÏ¼Å¾ß ÇÕ´Ï´Ù. À̶§ À§¿Í °°Àº ¸ñÀûÀ¸·Î È°¿ëÇÏ½Ç °èȹÀ̶ó¸é °£´ÜÇÏ°Ô ´ÙÀ½°ú °°ÀÌ ÀûÀ¸½Ã¸é µË´Ï´Ù.
module_A  module_A
module_B  module_B
À§ÀÇ ³»¿ëÀº module_A¶ó´Â °ÍÀÌ repository root¿¡ Á¸ÀçÇÏ´Â °æ¿ì ÀÔ´Ï´Ù.

1.35. CVSROOT/passwd¿¡ »ç¿ëÀÚ¸¦ ¾î¶»°Ô Ãß°¡Çϳª¿ä?

¸î °¡Áö ¹æ¹ýÀÌ ÀÖÁö¸¸, °¡Àå °£´ÜÇÑ ¹æ¹ý °¡¿îµ¥ Çϳª´Â apache ÆÐÅ°Áö¿¡ µé¾î ÀÖ´Â htpasswd ¸í·ÉÀ» ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù.

  $ htpasswd -b passwd username password

1.36. ÀÍ¸í »ç¿ëÀÚ´Â ¾î¶»°Ô µî·ÏÇϳª¿ä?

$ cat $CVSROOT/CVSROOT/readers
cvs
cvsguest

1.37. CVS°¡ /root ¾Æ·¡ ÆÄÀÏÀ» ãÀ¸·Á µì´Ï´Ù! ÀÌ°Ô ¹º°¡¿ä?

pserver ¼³Á¤À» ÇØÁÙ ¶§ ¾Æ·¡¿Í °°Àº ¿¡·¯°¡ ³ª´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.

cvs server: cannot open /root/.cvsignore: Permission denied

ÀÌ·² ¶© inetd ³ª xinetd ¼³Á¤À» ÇØÁÙ ¶§ cvs¿¡ ³Ñ°ÜÁÙ Àμö¿¡ '-f' ¿É¼ÇÀ» Ãß°¡ÇØÁÖ¸é ÇØ°áµË´Ï´Ù. xinetd ¶ó¸é /etc/xinetd.d/cvspserver ³»¿ëÀ» ¾Æ·¡¿Í °°ÀÌ ÇØ ÁÖ¸é µË´Ï´Ù.

# default: on
# description: cvs pserver
service cvspserver
{
        disable         = no
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/cvs
        server_args     = -f --allow-root=/home/cvs pserver
        log_on_failure  += USERID
}

1.38. Repository¸¦ ´Ù¸¥ ±â°è·Î ¿Å±â°í ½Í½À´Ï´Ù.

Q : ¸¸ÀÏ A ¼­¹ö¿¡ ÀÖ´ø repository ¸¦ B ¼­¹ö·Î ¿Å±â°í ½Í´Ù¸é ±×³É µð·ºÅ丮¸¦ Åëä·Î º¹»çÇÏ¸é µÇ·Á³ª¿ä? ±×°Ô ¾È µÈ´Ù¸é ÁË´Ù update ÈÄ »õ·Î import ¸¦ Ç϶ó´Â ¾ê±âÀε¥... -_-;;

A : ³× ±×³É ¿Å±â¸é µË´Ï´Ù. ¿Ïº®ÇÑ(?) ÀÌÀüÀ» À§Çؼ­¶ó¸é Á¶±Ý ½Å°æ½á¾ßÇÒ °ÍµéÀÌ ´õ ÀÖ±ä ÇÏÁö¸¸, µð·ºÅ丮¸¦ Åë° tar·Î ¹­¾î¼­ »õ ±â°è°Ô Ç®¾îÁØ ´ÙÀ½ permission Á¶Àý¸¸ ÇØÁ൵ À¢¸¸Å­ µË´Ï´Ù.

1.39. CVS ¼­¹ö¿¡ ÀÖ´Â repository¸¦ ¹Ì·¯¸µÇÒ ¼ö ¾ø³ª¿ä?

´Ü¼øÇÑ ¹é¾÷ ÀÌ»óÀ» ÀǹÌÇÏ´Â °ÍÀ̶ó¸é, CVS´Â ±âº»ÀûÀ¸·Î ´ÜÀÏ repository¸¦ ¹ÙÅÁÀ¸·Î ¼³°èµÇ¾ú±â ¶§¹®¿¡ ÀÚüÀûÀ¸·Î´Â ºÒ°¡´ÉÇÕ´Ï´Ù. ´ë±Ô¸ð ÇÁ·ÎÁ§Æ® °°Àº °æ¿ì¿¡ Àü¼¼°è °÷°÷¿¡ ¹Ì·¯¸¦ Çϱâ À§ÇØ CVSup °°Àº º¸Á¶µµ±¸¸¦ ÀÌ¿ëÇϰųª, ´Ü¼øÈ÷ rsync °°Àº ¹Ì·¯¸µ ÅøÀ» ÀÌ¿ëÇϱ⵵ ÇÕ´Ï´Ù. ±×·¯³ª ÀÌ °æ¿ì ÇÏÀ§ repository¿¡ commit ÇÑ ³»¿ëÀ» ´Ù½Ã »óÀ§(upstream)·Î merge Çϴµ¥ ±â¼úÀûÀÎ ¾î·Á¿òÀÌ µû¸¨´Ï´Ù. ±×·¸Áö¸¸ °æ¿ì¿¡ µû¶ó È¿°úÀûÀÎ °³¹ß ºê·£Ä¡³ª ·ÎÄà °³¹ßÀÚ ±×·ì Áö¿øÀ» À§Çؼ­´Â ²À ÇÊ¿äÇÑ ±â´ÉÀ̱⠶§¹®¿¡, CVS°¡ °¡Áö´Â ±Ùº»ÀûÀÎ Á¦¾àÀ» ±Øº¹ÇÏ°íÀÚ »õ·Î °³¹ßµÇ´Â ÇÁ·Î±×·¥ÀÌ ÀÖ½À´Ï´Ù. ¸¸¾à ²À °èÃþÀû repository¸¦ ±¸ÃàÇØ¾ß ÇÏ´Â »óȲÀ̶ó¸é, ´ÙÀ½ ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â °ÍÀ» °í·ÁÇØ º¸¼¼¿ä.

ÃÖ±Ù¿¡ XFree86 ÇÁ·ÎÁ§Æ®¸¦ arch¸¦ ÀÌ¿ëÇØ forkÇÑ »ç·Ê°¡ ÀÖ½À´Ï´Ù. : http://www.xouvert.org/

1.40. moduleµéÀ» °øÀ¯ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖ³ª¿ä?

Q : ¿¹¸¦ µé¾î¼­ libx¶ó´Â ¸ðµâÀÌ ÀÖ°í, proj_a¿Í proj_b°¡ À̸¦ ¸ðµÎ »ç¿ëÇÕ´Ï´Ù. À̶§ ÀÌ µÎ ÇÁ·ÎÁ§Æ®°¡ À¯»çÇÏ¿©¼­ libx¸¦ ÇÑÂÊ¿¡¼­ ¼öÁ¤ÇÏ¸é ´Ù¸¥ ÇÑÂÊ¿¡¼­µµ ¿µÇâÀ» ¹Þ¾Æ¾ß ÇÏ´Â °æ¿ì¶ó¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ¼­¹ö¿¡¼­ symbolic link¸¦ °É¾îÁְųª, Ŭ¶óÀ̾ðÆ®Ãø¿¡¼­ proj_a, proj_b¿¡ ¸ðµÎ libx¸¦ checkoutÇØÁÖ¸é µÇ°ÚÁö¸¸ ´Ù¼Ò ºÒÆíÇÔÀÌ ¾øÁö ¾Ê¾Æ ÀÖÀ»°Í °°¾Æ¼­ ¿©Âå º¾´Ï´Ù.

A : °¡´ÉÇÕ´Ï´Ù.

CVS¿¡¼­´Â ÇÁ·ÎÁ§Æ® °ü¸®¸¦ À§ÇØ ¾î¶² ¸ðµâÀ» checkoutÇÒ ¶§ ÇÏÀ§ ¸ðµâÀ» ¼±º°ÀûÀ¸·Î checkoutÇϰųª °¡»ó ¸ðµâÀ» ¸¸µé¾î ½ÇÁ¦ ¸ðµâÀ» ¿©·¯°³ µ¿½Ã¿¡ checkoutÇÏ´Â °Í µîÀ» Áö¿øÇÕ´Ï´Ù. ±âº»ÀûÀ¸·Î´Â CVSROOT/modules ÆÄÀÏÀ» ÀûÀýÈ÷ ±¸¼ºÇؼ­ ÇÁ·ÎÁ§Æ®¿¡ Âü¿©ÇÏ´Â °³¹ßÀÚµéÀÌ ÇÊ¿äÇÑ ºÎºÐÀ» Àß °ñ¶ó ¹Þ¾Æ°¥ ¼ö ÀÖµµ·Ï °ü¸®ÇØÁà¾ß ÇÕ´Ï´Ù. ÇÑ°¡Áö ¤¾îµÎ°í ½ÍÀº °ÍÀº, CVS´Â ¼Ò½º ¹öÀü °ü¸® ÇÁ·Î±×·¥ÀÌÁö ¾î¶² ƯÁ¤ ÇÁ·ÎÁ§Æ® ±¸Á¶¸¦ Á¤ÇØµÐ°Ô ¾Æ´Ï±â ¶§¹®¿¡ ½ÇÁ¦ ÇØ°á ¹æ½ÄÀº ÁøÇàÇÏ´Â ÇÁ·ÎÁ§Æ® ±¸¼º ¹× Á¤Ã¥¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù.

°£´ÜÇÏ°Ô µÎ°¡Áö °æ¿ì¸¦ ¿¹·Î µé¾îº¸Áö¿ä.

1. proj_a ¿Í proj_b, ±×¸®°í libx¸¦ ´õ Å« proj À¸·Î ¹­À» ¼ö ÀÖ´Â °æ¿ì

CVSROOT/modules ³»¿ëÀº
proj    proj  proj_a proj_b libx
proj_a  proj  proj_a libx
proj_b  proj  proj_b libx
libx    proj  libx
¿Í °°ÀÌ µÇ°í, checkoutÀ» ÇÏ°Ô µÇ¸é proj µð·ºÅ丮°¡ ¸ÕÀú »ý±â°í, ±× ¾Æ·¡¿¡ °¢ ¸ðµâÀÌ »ý±é´Ï´Ù.

2. proj_a ¿Í proj_b ´Â º°°³ ÇÁ·ÎÁ§Æ®ÀÌ°í libx µµ º°°³·Î °ü¸®ÇÏ´Â °æ¿ì

CVSROOT/modules ³»¿ëÀº
proj_a  -a  proj_a libx
proj_b  -a  proj_b libx
libx    libx
ÀÌ·¸°Ô µÇ°í, ¿¹¸¦ µé¾î cvs checkout proj_a ¸¦ ÇÏ°Ô µÇ¸é proj_a¿Í libx¶ó´Â ¸ðµâÀÌ °¢°¢ »ý¼ºµË´Ï´Ù. ÀÌ °æ¿ì libx¿¡ autotools(libtool)À» ä¿ëÇϵ簡 proj_a¿Í proj_b ºôµåÇϴµ¥ ¿¬°áµÇµµ·Ï ÀûÀýÈ÷ ±¸¼ºÇØÁà¾ß ÇÏ°ÚÁÒ.

µÎ°¡Áö°¡ ¹«½¼ Â÷À̳Ä? ¶ó°í Ȥ½Ã »ý°¢ÇÏ´Â ºÐÀÌ ÀÖÀ»Áö ¸ð¸£°Ú´Âµ¥, ÀüÀÚ¿¡¼­´Â ÃÖ»óÀ§ µð·ºÅ丮¿¡ ¶óÀ̺귯¸®¸¦ Æ÷ÇÔÇÑ ºôµå ½Ã½ºÅÛÀ» ±¸Ãà °ü¸®ÇÒ ¼ö Àֱ⠶§¹®¿¡ ¼º°ÝÀÌ ¸¹ÀÌ ´Þ¶óÁý´Ï´Ù.

¶Ç, °æ¿ì¿¡ µû¶ó
proj    proj
proj_b  proj  proj_a
proj_a  proj  proj_b
libx    libx
ÀÌ·± ½ÄÀ¸·Î ±¸¼ºÇÏ´Â °æ¿ìµµ »ý±â°ÚÁö¿ä.

½Éº¼¸¯ ¸µÅ©¸¦ °É¾îÁÖ´Â °Íµµ Æí¹ýÀ¸·Î °¡´ÉÀº ÇÏÁö¸¸, ¸ðµâÀ̳ª ¶óÀ̺귯¸® °ü¸®¶ó´Â Ãø¸é¿¡¼­ º»´Ù¸é ±×´ÙÁö ¹Ù¶÷Á÷ÇÏÁö´Â ¾Ê½À´Ï´Ù. ¹°·Ð ºÒ°¡ÇÇÇÑ »óȲÀÌ ÀÖÀ» ¼öµµ ÀÖÀ¸³ª ´ë°³´Â '¶óÀ̺귯¸®'¶ó´Â °Í ÀÚü°¡ ÇØ´ç Äڵ带 º°°³·Î µ¶¸³½ÃÄѾßÇÒ ¸¸Å­ ¿©·¯ °÷¿¡¼­ ¾²´Â °æ¿ì¿¡ ÇÑÇØ ¸¸µå´Â °ÍÀ̹ǷΠÀ§¿¡¼­ ¿¹¸¦ µç µÎ °¡Áö °æ¿ì¸¦ ÀûÀýÈ÷ ¼¯¾î¼­ ±¸¼ºÇÏ°í, autotools µîÀ» Àß ÀÌ¿ëÇϸé ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. (DeleteMe ÀÌ ÁÖÁ¦´Â CVS/FAQ¶ó´Â ¹üÀ§¸¦ ¹þ¾î³ª´Â °Í °°¾Æ ÀÌÁ¤µµ¸¸ Àû½À´Ï´Ù.)

1.40.1. °£´ÜÇÑ ¹æ¹ý

´Ü¼øÈ÷ ¾î¶² ¸ðµâÀ» °¡Á®¿Ã ¶§ ƯÁ¤ ÇϺΠ¸ðµâÀ» °°ÀÌ °¡Á®¿Àµµ·Ï ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µË´Ï´Ù.
proj_a proj_a &libx
proj_b proj_b &libx
libx libx
ÀÌ·¸°Ô Çϸé proj_a¸¦ üũ¾Æ¿ôÇÒ ¶§ proj_a µð·ºÅ丮 ¾Æ·¡¿¡ Ãß°¡·Î libx µð·ºÅ丮°¡ »ý±é´Ï´Ù.

1.41. Source file¿¡ °­Á¦·Î revisionÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ³ª¿ä ?

Q : ¿¹¸¦ µé¾î¼­ ¾î¶² ¼Ò½ºÀÇ revision #°¡ 1.12¶ó°í ÇÒ ¶§ ¾î¶² °è±â·Î ÀÎÇؼ­ ÀÌ ¹øÈ£ÀÇ Á¦ÀÏ ¾ÕÀÚ¸® ¼ýÀÚ¸¦ ¹Ù²Ù·Á°í ÇÏ¸é ¾î¶»°Ô ÇÏ¸é µÇ³ª¿ä ?

A : °¡´ÉÇÕ´Ï´Ù.
cvs ci -m "revision set to 2.0" -r2.0 ohmysrc.c
ÇØ´ç ÇÁ·ÎÁ§Æ®/¸ðµâ Àüü¸¦ Çѹø¿¡ ¹Ù²Ù·Á¸é, checkout ¹ÞÀº ¸ðµâ ÃÖ»óÀ§ µð·ºÅ丮¿¡¼­
cvs ci -m "revision set to 3.1" -r3.1
¿Í °°ÀÌ ÇÏ¸é µË´Ï´Ù.

±×·¯³ª

°¡´ÉÇÏ´Ù°í Çؼ­ ¹Ýµå½Ã ÀÌ·¸°Ô ÇÏ´Â°Ô ÁÁ´Ù´Â °ÍÀº ¾Æ´Õ´Ï´Ù.

±×·¯¹Ç·Î

Tag³ª Branch¸¦ ½á¾ßÇÏ´Â °æ¿ì°¡ ¾Æ´ÑÁö ´Ù½Ã Çѹø »ý°¢Çغ¸¼¼¿ä.

1.42. CVSµµ VSSó·³ ¹èŸÀû ¶ô(Exclusive Lock)À» °É¾î ³õ°í »ç¿ëÇÒ ¼ö ÀÖ³ª¿ä?

cvs admin -l filename
À» ÀÌ¿ëÇÏ½Ã¸é µË´Ï´Ù. ÀÌ °æ¿ì ÇØ´çÇÏ´Â »ç¶÷ÀÌ lockÀ» Á¦°ÅÇϱâ Àü±îÁö´Â commitÀÌ ºÒ°¡´ÉÇÏ°Ô µË´Ï´Ù. ÇÏÁö¸¸ ÀÌ·¸°Ô ÇÏ´Â °ÍÀº ´ëºÎºÐ ¹®¼­¿¡¼­ ±×´ÙÁö ±ÇÀåÇÏÁö ¾Ê´õ±º¿ä. cvs watch ÀÌ¿ëÇϱ⸦ ±ÇÀåÇÏ°í ÀÖ½À´Ï´Ù.

º¸ÅëÀº cvs edit¸¦ ½á¼­ ¿øÇÏ´Â È¿°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. cvs edit´Â µ¿½Ã¿¡ editÇÏ´Â °ÍÀ» ¹æÁöÇÏÁö ¾ÊÁö¸¸, cvs edit -c filename À» ¸ðµç »ç¶÷ÀÌ ÀÌ¿ëÇÏ°Ô µÈ´Ù¸é ±× ¼ø°£¿¡´Â ÇÑ »ç¶÷¸¸ÀÌ ÀÛ¾÷À» ÇÒ ¼ö°¡ ÀÖ°Ô µË´Ï´Ù. -c ¿É¼ÇÀ» ÁØ °ÍÀ» reserved edit¶ó°í Çϸç, ÀÌ °æ¿ì¿¡µµ ´©±¸³ª commitÀº °¡´ÉÇÕ´Ï´Ù.

1.43. Repository¿¡ Attic À̶õ°Ô ÀÖ´øµ¥ ÀÌ°Ç ¹º°¡¿ä?

»ç¿ëÀÚ°¡ Áö¿î(cvs rm) ÆÄÀÏÀ» º¸°üÇصδ °÷ÀÔ´Ï´Ù. AtticÀÌ ¿ì¸®¸»·Î Çϸé "´Ù¶ô"Àε¥, ÀÚÁÖ ¾²Áö´Â ¾ÊÁö¸¸ ¹ö¸®±ä ¾Æ±õ°í Ȥ½Ã ÇÊ¿äÇÏ°Ô µÉÁö ¸ð¸£´Â ¹°°ÇÀ» ÀúÀåÇÑ´Ù´Â Á¡¿¡¼­ º¸¸é »ó´çÈ÷ Àß ÁöÀº À̸§ °°½À´Ï´Ù.

»ç¿ëÀÚ°¡ cvs rmÀ» Çؼ­ ÆÄÀÏÀ» Áö¿ì°Ô µÇ¸é, ÇØ´ç ÆÄÀϵéÀÌ ¿ÏÀüÈ÷ »èÁ¦µÇ´Â°Ô ¾Æ´Ï¶ó Attic ¾Æ·¡¿¡ ¿Å°ÜÁý´Ï´Ù. ±×¸®°í °ú°Å ¹öÀüÀ» checkout Çϰųª ÇÒ¶§ ²ôÁý¾î³»¼­ ¾²´Â °ÅÁö¿ä.

1.44. Unicode fileÀ» Áö¿øÇÏÁö ¸øÇϴ°¡¿ä?

Q : ÀÌ·¯ÇÑ ¸Þ½ÃÁö¸¦ ¸¸³µ½À´Ï´Ù.
cvs import: Remote server does not support Unicode files.  Checkin may be invalid.
¿©·¯°³ÀÇ ÆÄÀÏÀ» ÇѲ¨¹ø¿¡ importÇÒ¶§ ³ª¿ÔÀ¸¸ç, À̸¦ ´Ù½Ã ¼öÁ¤ÇÏ¿© ciÇÒ¶§¿¡µµ ³ªÅ¸³µ½À´Ï´Ù. À½.. ù¹ø° ÆÄÀÏ¿¡¼­ ÀÌ·¯ÇÑ ¹®±¸°¡ ³ªÅ¸³µ´Âµ¥, Æò¹üÇÑ C++ code¶ó¼­ ´Ù¸¥ ÆÄÀÏÀÌ ¾Æ´Ñ°¡ ÇÕ´Ï´Ù. ¾Æ¿ï·¯ -ku¶ó°í ³ªÅ¸³ª´Â ¸Þ½ÃÁöµµ ¹«¾ùÀÎÁö ¸ð¸£°Ú³×¿ä.
cvs commit: Remote server does not support Unicode files.  Checkin may be invalid.
Checking in ***.cpp;
cvs server: internal error: unsupported substitution string -ku
/***.cpp,v  <--  ***m.cpp
new revision: 1.2; previous revision: 1.1
done
ÇØ´ç ÆÄÀÏ ¾È¿¡ À¯´ÏÄÚµå·Î µÈ ÅؽºÆ®°¡ µé¾îÀÖ³ª¿ä? Ȥ½Ã RCS keyword substitution À¸·Î ¾²ÀÌ´Â ³»¿ëÀÌ µé¾îÀÖ³ª¿ä?

1.45. ÀÌ¹Ì Text·Î ¾÷·Îµå µÈ ÆÄÀÏÀ» Binary·Î ¹Ù²Ü ¼ö Àִ°¡¿ä?

¹ÙÀ̳ʸ®·Î ¾÷·ÎµåÇÏ·Á¸é -kb¿É¼ÇÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦µé¾î,
$ echo '$Id: CVS_2fFAQ,v 1.99 2005/08/19 01:21:43 kss Exp kss $' > kotest
$ cvs add -kb -m"A test file" kotest
$ cvs ci -m"First checkin; contains a keyword" kotest
ÀÔ´Ï´Ù.

¸¸¾à ½Ç¼ö·Î -kb¿É¼ÇÀ» ºü¶ß¸®°í (ÅؽºÆ®·Î)¾÷·Îµå ÇßÀ»°æ¿ì, ¹ÙÀ̳ʸ®·Î º¹±¸ÇÏ·Á¸é cvs admin ¿É¼ÇÀ¸·Î ¾Æ·¡ÀÇ ¿¹Ã³·³ ¹Ù²Ù¸é µË´Ï´Ù.
$ echo '$Id: CVS_2fFAQ,v 1.99 2005/08/19 01:21:43 kss Exp kss $' > kotest
$ cvs add -m"A test file" kotest
$ cvs ci -m"First checkin; contains a keyword" kotest
$ cvs admin -kb kotest
$ cvs update -A kotest
# For non-unix systems:
# Copy in a good copy of the file from outside CVS
$ cvs commit -m "make it binary" kotest

1.46. ÀÌ¹Ì Binary·Î ¾÷·Îµå µÈ ÆÄÀÏÀ» Text·Î ¹Ù²Ü ¼ö Àִ°¡¿ä?

ÇѱÛÀÌ µé¾îÀÖ´Â ÆÄÀÏÀ» WinCVS¸¦ ÅëÇؼ­ add/import¸¦ ÇÏ°Ô µÇ¸é binary¸¦ ±ÇÀåÇÕ´Ï´Ù. À̶§, ½Ç¼ö·Î Binary·Î add/importÇÏ°Ô µÇ¸é merge±â´ÉÀ» Áö¿øÇÏÁö ¾Ê¾Æ ºÒÆíÇÏ°Ô µÇÁö¿ä. ÀÌ·² ¶§, À§ÀÇ Text->Binary¿Í´Â ¹Ý´ëÀÇ ÀÛ¾÷ÀÌ ÇÊ¿äÇÏ°Ô µÇ´Âµ¥, À§ÀÇ ³»¿ë°ú °°°í, ¿É¼Ç¸¸ -kb°¡ ¾Æ´Ñ -kkv·Î ÇØ ÁÖ¸é µË´Ï´Ù.
$ cvs admin -kkv kotest

-- DeleteMe ÀÌ°ÍÀ¸·Î ÇÑÂü °í¹ÎÇÏ°í ÀÌ°Í Àú°Í ÇØ º» °á°ú ¾Ë¾Æ ³Â½À´Ï´Ù¸¸, ¿©±â¼­ ¸»ÇÏ´Â keyword¶ó´Â °Ô Á¤È®ÇÏ°Ô ÀǹÌÇÏ´Â ¹Ù¸¦ ¸ð¸£°Ú½À´Ï´Ù. ¾Æ½Ã´Â ºÐÀº ¼³¸í ºÎŹµå¸³´Ï´Ù. (-kkvÀÇ help¿¡´Â Generate keywords using the default form.¶ó°í µÇ¾î ÀÖ½À´Ï´Ù.) barmi

1.47. ·Î±×¸¦ À߸ø Àû¾ú´Âµ¥ °íÄ¥ ¼ö ¾øÀ»±î¿ä?

$ cvs admin -m1.2:"new log" myprog.c

űװ¡ ºÙ¾î ÀÖ´Â °æ¿ì¶ó¸é
$ cvs admin -mV_1_0:"massive new log"
ÀÌ·¸°Ô Çѹø¿¡ ¹Ù²Ù´Â °Íµµ °¡´ÉÇÕ´Ï´Ù.

1.48. Tag¿¡ comment¸¦ ºÙÀ̴°ÍÀº °¡´ÉÇÑ°¡¿ä

AnswerMe Áú¹®ÀÌ Á¶±Ý ¾Ö¸ÅÇÑ°Í °°½À´Ï´Ù. Á¦¸ñ¸¸ º¸°í´Â ¾î¶² »óȲÀÎÁö Á¤È®È÷ ¾Ë ¼ö ¾ø¾î ´äº¯ÀÌ µÎ·ç¹¶½ÇÇÕ´Ï´Ù. Á¶±Ý´õ »óȲÀ» ¼³¸íÇØ ÁÖ½ÃÁö¿ä?

tag¸¦ ºÙÀ̸鼭 °Å±â¿¡ ´ëÇÑ ·Î±×¸¦ ¾îµò°¡¿¡ ±â·ÏÇØµÑ ¼ö ¾ø³Ä´Â ¾ê±ä°¡¿ä? ±×·±°Å¶ó¸é ´ë´äÀº ºÒ°¡´ÉÇÏ´Ù ÀÔ´Ï´Ù. CVS´Â ÆÄÀÏ º°·Î ·Î±×¸¦ ºÙÀÌ°Ô µÅ ÀÖ´Â RCS¸¦ °è½ÂÇϱ⠶§¹®¿¡ °¢ checkin º°·Î ±â·ÏÀ» ÇÒ ¼ö ¾ø´Ù´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ±×·¡¼­ Subversion °°Àº °æ¿ì ¾Æ¿¹ ÆÄÀϺ° revisionÀÌ ¾Æ´Ï¶ó per-checkin revisionÀ» ¸ðµâ ´ÜÀ§·Î ºÙ¿©ÁÖ´Â ¹æ½ÄÀ» äÅÃÇß½À´Ï´Ù.

¸¸¾à tag ÀÚü¿¡ ´ëÇØ ¾îµò°¡¿¡ ±â·ÏÀ» ³²±â°í ½ÍÀº °Å¶ó¸é ChangeLog ³ª README µî¿¡ ³»¿ëÀ» Àû¾îµÎ´Â °ÍÀ¸·Î ´ëüÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

Áú¹®ÀÚÀÔ´Ï´Ù. ¸»¾¸ÇØ ÁֽŠ³»¿ëÀÌ Á¤È®ÇÕ´Ï´Ù. Á¦°¡ º¸±â¿¡µµ file ´ÜÀ§·Î log message¸¦ ³²±â´Â °Í °°¾Æ¼­ ¿©Âå º¸¾Ò´ø °ÍÀÔ´Ï´Ù. ¾ÆÁ÷ Àͼ÷ÇÏÁö ¸øÇؼ­ÀÎÁö Á» ºÒÆíÇÑ Á¡À¸·Î »ý°¢µÇ¾î¼­ Áú¹®À» Çß´ø °ÍÀÔ´Ï´Ù. :)

http://www.cvstrac.org/ CVS modÀÎ°Í °°Àºµ¥ check-in ´ÜÀ§·Î ±â·ÏÀ» ³²±æ¼ö ÀÖ½À´Ï´Ù. http://www.sqlite.org ¿¡¼­ »ç¿ë ÇÏ´Â°É º¸¸é ±¦Âú¾Æ º¸ÀÔ´Ï´Ù.

1.49. Unknown command ¶ó´Â ¿¡·¯°¡ ³³´Ï´Ù.

Q: Á¢¼Ó½Ã¿¡
cvs [login aborted]: unrecognized auth response from 127.0.0.1: Unknown command: `/home/cvs'
¶ó°í ³ª¿À³×¿ä.. °­Á´ë·Î Çß´Ù°í »ý°¢Çߴµ¥.. passwd file ¹®Á¦Àΰ¡¿ä? redhat 9.0À» ¾²°í ÀÖÀ¾´Ï´Ù.

A: -d ¿É¼Ç (CVSROOT) ÁÙ ¶§ »ç¿ëÀÚ@¼­¹ö¸í:°ú /µð·ºÅ丮/°æ·Î »çÀÌ¿¡ ºó Ä­ÀÌ µé¾î°¡ ÀÖ´Â °Í °°½À´Ï´Ù.
$ cvs -d :pserver:anonymous@anonymous.com:/cvsroot
ÀÌ·¸°Ô ÀüºÎ ºÙ¿©Áà¾ß ÇÕ´Ï´Ù.

1.50. Ç×»ó ÃֽŹöÀüÀÇ ¼Ò½º¸¦ À¯ÁöÇÏ°í ½Í¾î¿ä

Ç×»ó ÃÖ½ÅÀÇ ¹öÀüÀ» À¯ÁöÇÏÁö ¾Ê°í ÀÛ¾÷À» ÇÏ´Ï Commit½Ã ÀÚÁÖ Conflict°¡ ¹ß»ýÇÕ´Ï´Ù. WinCVS³ª TortoiseCVS¸¦ ½á º¸¾Ò´Âµ¥ ÃֽŠ¹öÀüÀ¸·Î À¯ÁöÇØ ÁÖ´Â ±â´ÉÀ» ¾È º¸ÀÌ´øµ¥¿ä. µ¡ºÙ¿© update½Ã ¹ß»ýÇÏ´Â conflict¸¦ ÁÙÀÌ°í ½Í½À´Ï´Ù. update½Ã merge¸¦ ¼±ÅÃÀûÀ¸·Î ÇÒ ¼ö´Â ¾ø³ª¿ä? ¿¹¸¦ µé¾î¼­ 'ÀÌ ÆÄÀÏÀº ´õ ÃÖ±ÙÀÇ °ÍÀÌ Á¸ÀçÇÕ´Ï´Ù. mergeÇÒ±î¿ä? (Y/n)' ÀÌ·±½ÄÀ¸·Î¿ä.

* WinCVS¿¡¼­ ¿ì¼± updateÇÕ´Ï´Ù. ±×·³ merge³ª conflict µÇ¾î ÀÖÀ»°Ì´Ï´Ù. ´Ù½Ã updateÇϸ鼭 update settingsÁß Get the clean copy¸¦ üũÇÏ½Ã¸é µË´Ï´Ù.
Clean copy¸¦ ¹Þ°í ½ÍÀº°Ô ¾Æ´Ï¶ó local modify ÆÄÀÏÀº update¸¦ ¹Þ°í ½ÍÁö ¾ÊÀº °æ¿ì¸¦ ¸»¾¸ µå·È´ä´Ï´Ù. ^^ ±×¸®°í update ¸í·ÉÀ» ÀÚµ¿À¸·Î ¼öÇàÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖÀ¸¸é ÁÁ°Ú´Ù´Â°Å¿´½À´Ï´Ù. 2°¡Áö°¡ »óÃæµÈ Áú¹®À» µå·Á¼­ Çò°¥¸®¼Ì³ª º¾´Ï´Ù. _ °¨»çÇÕ´Ï´Ù.
±×·± °æ¿ì Update query Çؼ­ ÀúÀå¼Ò¿¡ º¯°æµÈ ÆÄÀÏÀ» È®ÀÎÇÑ ÈÄ ±× ÆÄÀϵ鸸 ¼±ÅÃÇؼ­ ¾÷µ¥ÀÌÆ® ÇÏ½Ã¸é µË´Ï´Ù. ½ºÅ©¸³Æ® Çϳª ¸¸µé¾î º¸½Ã´Â °Íµµ ÁÁÀ»µí ÇÕ´Ï´Ù. :)

1.51. ÀÌÀü¹öÀüÀ¸·Î µÇµ¹¸®°í ½Í¾î¿ä(Rollback)

http://bbs.kldp.org/viewtopic.php?t=28936

1.52. CVS¸¦ ¾µ±î¿ä SubversionÀ» ¾µ±î¿ä?

Q : ÀÌÁ¦¼­¾ß CVS¶ó´Â °Í¿¡ ´ëÇØ ¾Ë°Ô µÇ¾î ¹è¿öº¼±î Çß´õ´Ï CVSÀÇ ºÒÆíÇÑ Á¡À» °³¼±ÇÑ SubversionÀÌ ³ª¿Ô´Ù°í Çϳ׿ä. óÀ½ ¹è¿ì´Â »ç¶÷Àº ¹Ù·Î SubversionÀ» ÀÍÇô¾ß Çϳª¿ä? ¾Æ´Ï¸é CVS ¸¦ ¸ÕÀú ÀÍÇô¾ß Çϳª¿ä?

A : ´ëºÎºÐÀÇ ¿ÀǼҽº°¡ CVS·Î ÁøÇà µÇ´Ï CVS¸¦ ¸ÕÀú ÀÍÈ÷´Â°ÍÀÌ ÁÁ°ÚÁÒ. SubversionÀÌ ¾ÈÁ¤ÀûÀ̶ó°í Çϱä Çϳª °ø½ÄÀûÀÎ stable ¹öÀüÀº ¾ðÁ¦Âë ³ª¿ÃÁö´Â... ¿äÁò ÇÑ´Þ¿¡ µÎ¹ø¾¿ ¹öÀüÀÌ ¿Ã¶ó°¡´Âµ¥ ¾÷µ¥ÀÌÆ® ÇØÁÖ±â Á» ±ÍÂú´õ±º¿ä. CVS¿¡ ºÒ¸¸ÀÌ »ý±â¸é ±×¶§ ½½½½ ¹Ù²Ù½Ã¸é µË´Ï´Ù.

A : SubVersionÀº CVSÀÇ ºÒÆíÇÑ Á¡À» °³¼±Çߴٱ⠺¸´Ù´Â ¿ÏÀüÈ÷ ´Ù¸¥ ÇÁ·Î±×·¥À¸·Î º¸´Â°Ô ¸Â½À´Ï´Ù. »óÈ£ ȣȯ¼ºµµ ¾ø°í, ´ÜÁö SubVersion¿¡¼­ ±âÁ¸¿¡ CVS·Î ¿î¿µµÇ´ø ÇÁ·ÎÁ§Æ®¸¦ importÇÒ ¼ö ÀÖ°Ô ÇسùÀ» µû¸§ÀÔ´Ï´Ù. revision/version °ü¸® ¸ðµ¨ ÀÚüµµ ÀüÇô ´Ù¸¨´Ï´Ù. ½Ã±â»ó ³ªÁß¿¡ ¸¸µé¾îÁ³±â ¶§¹®¿¡ CVS°¡ °¡Áö´Â ´ÜÁ¡µéÀ» »ó´ç ºÎºÐ °³¼±ÇÑ °ÍÀº »ç½ÇÀÔ´Ï´Ù¸¸, °³¹ß ¸ðµ¨ ÀÚü¿¡ ´ëÇÑ Á¢±Ù ¹æ½ÄÀ̶ö±î öÇÐÀ̶ö±î ±×·±°Ô ´Ù¸¥ ºÎºÐÀÌ ÀÖ¾î º¸¿©¼­ Á¦ °æ¿ì¿£ Á¶±Ý °ü¸ÁÇÏ´Â ÁßÀÔ´Ï´Ù. ¹öÀü ÄÁÆ®·Ñ ÇÁ·Î±×·¥À» ÀüÇô ½áº¸Áö ¾ÊÀº »ç¶÷ ÀÔÀå¿¡¼­ ¾î´À ÂÊÀÌ ´õ ÀÍÈ÷±â ½±´Ùµç°¡ ÇÏ´Â °Ç Àß ¸ð¸£°Ú±º¿ä. SubVersionµµ CVS¸¦ ¾²´ø »ç¶÷Àº ½±°Ô ¿Å°Ü°¥ ¼ö ÀÖ´Ù°í ¾ê±âÇÕ´Ï´Ù¸¸ ±×°Å¶ûÀº º°°³¶ó¼­ ¸»ÀÌÁÒ. --verotas

2. help »ç¿ë¹ý

¹öÀü È®ÀÎ
$ cvs --version
Concurrent Versions System (CVS) 1.11.2 (client/server)

±×³É cvs¸¸ Ä¡¸é help »ç¿ë¹ýÀÌ ÀÚ¼¼È÷ ³ª¿Â´Ù.
$ cvs
Usage: cvs [cvs-options] command [command-options-and-arguments]
  where cvs-options are -q, -n, etc.
    (specify --help-options for a list of options)
  where command is add, admin, etc.
    (specify --help-commands for a list of commands
     or --help-synonyms for a list of command synonyms)
  where command-options-and-arguments depend on the specific command
    (specify -H followed by a command name for command-specific help)
  Specify --help to receive this message

The Concurrent Versions System (CVS) is a tool for version control.
For CVS updates and additional information, see
    the CVS home page at http://www.cvshome.org/ or
    Pascal Molli's CVS site at http://www.loria.fr/~molli/cvs-index.html

ƯÁ¤ ¸í·É¾î ¿É¼ÇÀ» ÀÚ¼¼È÷ º¸·Á¸é
$ cvs -H update
Usage: cvs update [-APCdflRp] [-k kopt] [-r rev] [-D date] [-j rev]
    [-I ign] [-W spec] [files...]
......

»ç¿ëÇÒ ¼ö ÀÖ´Â ¸í·É¾î »ý·«ÇüÀº ´ÙÀ½°ú °°´Ù.
$ cvs --help-synonyms
CVS command synonyms are:
        add          ad new
        admin        adm rcs
        annotate     ann 
        checkout     co get
        commit       ci com
        diff         di dif
        export       exp ex
        history      hi his
        import       im imp
        log          lo 
        login        logon lgn
        rannotate    rann ra
        rdiff        patch pa
        release      re rel
        remove       rm delete
        rlog         rl 
        rtag         rt rfreeze
        status       st stat
        tag          ta freeze
        update       up upd
        version      ve ver
(Specify the --help option for a list of other help options)

3. ¿ë¾î

repository working file working directory (or area) checkout commit (checkin) RCS file modules revision tag branch "the trunk" HEAD / BASE merge conflict

4. ¹®¼­¸¦ ¸¸µé¸é¼­

°³ÀÎÀûÀ¸·Î, ¸î ³â Àü CVS¸¦ óÀ½ ¹è¿ì¸é¼­ Á¦ÀÏ ¾î·Á¿ü´ø°Ô °£´ÜÇÑ ¼Ò°³ ¹®¼­´Â Çѱ۷ΠµÈ°Ô ÀÖ¾úÁö¸¸ Á¶±Ý¸¸ ´õ »ó¼¼ÇÑ °É ã¾Æº¸·Á¸é Á¦´ë·Î µÈ (¿µ¾îµç ÇѱÛÀ̵ç) HOWTO °°Àº°Ô ÀÖÁöµµ ¾Ê¾Ò°í, (Áö±Ýµµ ÀÖ´ÂÁö´Â ¸ð¸£°ÚÁö¸¸) Faq-O-Matic À¸·Î µÈ ¿µ¾î FAQ »çÀÌÆ®°¡ ·¹ÆÛ·±½º·Î ¾µ¸¸ÇÑ À¯ÀÏÇÑ °÷À̾ú½À´Ï´Ù. ±×·¡¼­ ±×¶§ºÎÅ͵µ óÀ½ ¿ÀǼҽº ¼¼»óÀ» Á¢ÇÏ´Â °³¹ßÀÚ¿¡°Ô CVS¶ó´Â À庮À» ¶Ù¾î ³Ñ´Âµ¥ º¸ÅÆÀÌ µÇ´Â ¹®¼­ °°Àº°Ô ²À ÇÊ¿äÇÏ´Ù°í ´À³¢°í ÀÖ¾ú½À´Ï´Ù.

±×µ¿¾È CVS¸¦ ´Ù·é Ã¥µµ Ãâ°£µÇ¾ú°í CVS ´ÙÀ½ ¼¼´ë°¡ µÉ¸¸ÇÑ ´Ù¸¥ ÇÁ·Î±×·¥µéµµ ³ª¿Ô°í Çؼ­ ÇÏ·Á°í¸¸ µç´Ù¸é »ó´ëÀûÀ¸·Î ÀÚ·á ã±â³ª ¹è¿ì±â°¡ ´õ ½¬¿öÁø ¸éµµ ºÐ¸í ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸ º»·¡ ÁÁÀº HOWTO µéÀÌ ±×·¯ÇϵíÀÌ Ã³À½ ½ÃÀÛÇÏ´Â »ç¶÷ÀÌ µü ±× ¹®¼­ Çϳª¸¸ Âï¾î¼­ ¿·¿¡ µÎ°í ¼ÕÀ¸·Î ¤¾î°¡¸ç µû¶óÇϸé ÀÏ´Ü ''½ÃÀÛ'Àº ¾î¶»°Ôµç Çغ¼ ¼ö ÀÖ´Â ±ÛÀÌ ¾Æ½¬¿ü°í, ±Û ¼­µÎ¿¡ ¹àÇûµíÀÌ ÇöÀç Á¸ÀçÇÏ´Â Çѱ۷ΠµÈ CVS °ü·Ã ¹®¼­µéÀº ´ã°í ÀÖ´Â Á¤º¸°¡ °¡Áö´Â À¯¿ë¼º¿¡ ºñÇØ Áý¾àµµ(?)°¡ ¶³¾îÁö°í, »ç¿ëÀÚ¿¡°Ô ÇÊ¿äÇÑ ³»¿ë°ú °ü¸®ÀÚ¿¡°Ô ÇÊ¿äÇÑ ³»¿ëÀÌ Àß ±¸ºÐÀÌ µÇ¾î ÀÖÁö ¾Ê¾Æ °á°úÀûÀ¸·Î óÀ½ Á¢ÇÏ´Â »ç¶÷¿¡°Ô ¹®ÅÎÀ» ³·Ãß´Â ¿ªÇÒ¿¡ Ãæ½ÇÇÏÁö ¸øÇÑ ºÎºÐÀÌ ÀÖ´Ù°í »ý°¢ÇÕ´Ï´Ù.

Àå±âÀûÀ¸·Î´Â ÀÌ·± °ÍµéÀ» ÇØ°áÇÒ ¼ö ÀÖ´Â ÁÁÀº ±ÛÀÌ ³ª¿Í¾ß ÇÏ°ÚÁö¸¸, ¾Æ½¬¿î ´ë·Î "KLDP¿¡ ÀÖ´Â ¹®¼­¸¦ º¸°í µû¶óÇÏ´Ù º¸´Ï ÀÌ·± ¹®Á¦¿¡¼­ °É¸®´Âµ¥ ¾î¶»°Ô ÇÏ¸é µÇ´Â °Å³Ä" ÇÏ´Â Áú¹®¿¡ ´ëÇÑ ´ä Á¤µµ¶óµµ »ý°¢³ª´Â ´ë·Î Á¤¸®ÇØ º¸ÀÚ ¶ó°í »ý°¢Çؼ­ ½ÃÀÛÇÏ°Ô µÆ½À´Ï´Ù. ¾ÕÀ¸·Îµµ »ý°¢³ª´Â ´ë·Î Ç׸ñµé Ãß°¡ÇØ ³ª°¡¸é¼­ Á¤¸®ÇØ ³ª°¥ »ý°¢ÀÔ´Ï´Ù. --verotas

Thanks to ±Ç¼ø¼±, ÂоÆ, voxel, IrIz, Advanced

5. °ü·Ã ÀÚ·á



ID
Password
Join
Show your affection, which will probably meet with pleasant response.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-08-19 10:21:44
Processing time 0.0263 sec