· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Rcs Tutorial

RCS °­ÁÂ

ÀӴ뿵 <RAXIS@hitel.net> v1.0h, 1997³â 8¿ù 28ÀÏ

À±ÇöÈ£ <hhyoon@kldp.org> HTML¹®¼­¸¦ À§Å°¹®¼­·Î º¯È¯. 2005³â 2¿ù 23ÀÏ



°­·ÂÇÑ ¹öÀü °ü¸® µµ±¸ÀÎ RCS¿¡ ´ëÇÏ¿© ¼³¸íÇÑ´Ù.


1. µé¾î°¡¸é¼­ (¹öÀüÀ̶õ)

ÇÁ·Î±×·¥ °³¹ß°ú À¯Áö¿¡ À־ °¡Àå Áß¿äÇÑ ¹®Á¦ ÁßÀÇ Çϳª°¡ ¹Ù·Î ¹öÀü °ü¸®(version management)ÀÔ´Ï´Ù. ¿©·¯ºÐÀº ¹öÀüÀ̶ó´Â °ÍÀ» ¾î¶² Àǹ̷ΠÀÌÇØÇÏ°í °è»ê°¡¿ä? ÇÑ±Û 3.0 À̳ª MS windows 3.1, Windows 95 µî¿¡¼­ ÇÁ·Î±×·¥ µÚ¿¡ ÀÌ»óÇÑ ¼Ò¼öÁ¡ ´Þ¸° ¼ýÀÚ°¡ ¾Æ´Ï³Ä°í ´äÇϽðÚÁö¿ä. ¸Â½À´Ï´Ù.

±×·¯¸é ¹öÀüÀ̶ó´Â °ÍÀº ÀÌ·¸°Ô ÀÌ¹Ì Á¦Ç°È­µÇ¾î ÀÖ´Â ÇÁ·Î±×·¥¿¡ ºÙÀÌ´Â °ÍÀϱî¿ä? ¾Æ´Õ´Ï´Ù.

¿©·¯ºÐµéÀÌ ÇÁ·Î±×·¥À» © ¶§µµ ¾ö¿¬È÷ ¹öÀüÀº Á¸ÀçÇÏ´Â °ÍÀÔ´Ï´Ù. °¡·É 100Á٠¥¸® ÇÁ·Î±×·¥À» Çϳª ®´Ù°í °¡Á¤ÇսôÙ. ±×¸®°í ¿©±â¼­ ÇÔ¼ö¸¦ Çϳª Ãß°¡Çß½À´Ï´Ù. ±×¸®°í ¸çÄ¥ ÀÖ´Ù°¡ ´Ù½Ã ÇÔ¼ö ¸î °³¸¦ Ãß°¡ÇÏ°í, ÇÊ¿ä ¾ø´Â ÇÔ¼ö ÇÑ °³¸¦ ¾ø¾Ý½À´Ï´Ù. º¸Åë ÀϾ ¼ö ÀÖ´Â °æ¿ìÀÌ°ÚÁö¿ä. ÀÌ·¸°Ô ÇÁ·Î±×·¥À» °³¹ßÇÒ ¶§ ±× ±¸¼º ¿ä¼Ò°¡ ¹Ù²ñ¿¡ µû¶ó¼­ ÇÁ·Î±×·¥Àº ÀüÇô »õ·Î¿î °ÍÀÌ µÉ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÁ·Î±×·¥¿¡ ¿µÇâÀ» ÁÙ ¼ö ÀÖ´Â °¢ ´Ü°è¸¦ ¹öÀü(version)À̶ó´Â ¸»·Î Ç¥ÇöÇÏ°Ô µÇÁÒ.

ÀÌ °­Á´ ÀÌ·± ÇÁ·Î±×·¥¿¡ À־ÀÇ ¹öÀüÀ̶ó´Â °³³äÀ» ÀÌÇØÇÏ°í, ¹öÀüÀ» Àü¹®ÀûÀ¸·Î °ü¸®ÇÏ´Â RCS(Reversion Control System)¿¡ ´ëÇؼ­ ¼Ò°³ÇÏ´Â °ÍÀÔ´Ï´Ù. Çѹø õõÈ÷ Àо½Ã°í Çѹø µû¶óÇØ º¸¼¼¿ä. Àç¹Õ¾î¿ä.

2. RCS ¶õ ¹«¾ùÀΰ¡?

¿©·¯ºÐµéÀº Àß ¸ð¸£°ÚÁö¸¸ ¹öÀü °ü¸® ÇÁ·Î±×·¥Àº ¾ÆÁÖ ¸¹½À´Ï´Ù. ¸î °³¸¸ ¿­°ÅÇØ º¸ÁÒ. IBMÀÇ CLEAR/CASTER, AT&TÀÇ SCCS, CMU(Ä«³×±â ¸á·Ð ´ëÇÐ)ÀÇ SDC, DECÀÇ CMS, ±×¸®°í ¿À´Ã ¼Ò°³ÇÒ RCS °¡ ÀÖ½À´Ï´Ù. ¿À´Ã³¯ÀÇ RCS ´Â ÇÑ »ç¶÷ÀÌ ¸¸µç °ÍÀÌ ¾Æ´Õ´Ï´Ù. Linux°¡ ±×·¯ÇϵíÀÌ RCSµµ ¼ö¸¹Àº »ç¶÷µéÀÌ ±â´É Çϳª Çϳª¸¦ Ãß°¡ÇÏ°í °íÃļ­ ¿À´Ã³¯ÀÇ RCS °¡ µÇ¾ú½À´Ï´Ù.

Áö±Ý±îÁö ´ëºÎºÐÀÇ »ç¶÷µéÀÌ ÇÁ·Î±×·¥À» © ¶§ Çϳª °íÄ¡°í ÀÌ°ÍÀ» temp ÆÄÀÏ·Î Çϳª ÀúÀåÇØ ³õ°í, Çϳª °íÄ¡°í ¶Ç Çϳª temp ÆÄÀÏ ¸¸µé°í ÀÌ·± ¹æ½ÄÀ̾úÀ» °Ì´Ï´Ù. RCS´Â ÀÚµ¿À¸·Î ¹öÀüÀ» ÀúÀåÇÏ°í, ²¨³»°í, ºñ±³ÇÏ°í, ÃßÀûÇÏ°í, ÇÕÄ¡´Â ¿©·¯ °¡Áö ÀÏÀ» ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. UNIX °è¿­¿¡¼­¸¸ ÀÖ´Â °ÍÀÌ ¾Æ´Ï°í, ¿äÁòÀº µµ½º¿ëµµ ³ª¿Í ÀÖ´õ±º¿ä, RCS¸¦ ÀÌ¿ëÇؼ­ ´Ü¼øÇÏ°Ô C ÇÁ·Î±×·¥ ¼Ò½ºÀÇ ¹öÀü¸¸À» °ü¸®ÇÑ´Ù°í »ý°¢ÇÏ½Ã¸é ¿À»êÀÔ´Ï´Ù. RCS ´Â C, C++, Fotran µîÀÇ ÀÏ¹Ý ÇÁ·Î±×·¥»Ó¸¸ ¾Æ´Ï¶ó ÀÏ¹Ý ¹®¼­, ³í¹®, ±×¸² µîµî »ý°¢ÇØ º¸¸é ¹öÀüÀ̶ó´Â °ÍÀ» °®´Ù ºÙÀÏ ¼ö ÀÖ´Â °ÅÀÇ ¸ðµç °÷¿¡ ÀÌ¿ëÇÒ ¼ö ÀÖÀ» °Ì´Ï´Ù.

3. RCSÀÇ ±â´É°ú ±¸¼º

±×·³ RCS¿¡´Â ¾î¶² ±â´ÉµéÀ» Á¦°øÇÏ°í ÀÖÀ¸¸ç, ¶Ç ¾î¶² ÆÄÀÏ·Î ±¸¼ºµÇ¾î ÀÖ´ÂÁö Çѹø »ý°¢ÇØ º¸ÁÒ.

3.1. RCS ÀÇ ±â´É

RCS ¿¡¼­ Á¦°øÇÏ´Â ±â´ÉÀ» Çѹø Á¤¸®ÇØ º¼±î¿ä.
  • ÅؽºÆ® ÆÄÀÏÀÇ ¸®¹öÀü(reversion)À» ÀúÀåÇÏ°í ²¨³» º¼ ¼ö ÀÖ´Ù.
  • ÀúÀåµÈ ÀÓÀÇÀÇ ¹öÀüÀ» ¼±ÅÃÇؼ­ ²¨³» º¼ ¼ö°¡ ÀÖ´Ù. (ÀÌ°Ô ÁÁÁÒ. ÀÌ°ÍÀº ¸ðµÎ RCS°¡ ¹Ù²ï ³»¿ëÀ» ´Ù °¡Áö°í Àֱ⠶§¹®ÀÔ´Ï´Ù.)
  • ÇϳªÀÇ ¿Ï¼ºµÈ ÇÁ·Î±×·¥ÀÌ µÇ±â À§Çؼ­´Â ¹öÀü Æ®¸®(Version Tree)°¡ Çü¼ºµÈ´Ù. Áï ÇϳªÀÇ ¿ø·¡ ¹öÀü¿¡¼­ ¿©·¯ °³ÀÇ »õ³¢ ¹öÀü(child version)ÀÌ ¸¸µé¾î Áú ¼ö°¡ ÀÖ´Ù. ÀÌ°ÍÀÌ ÇϳªÀÇ Æ®¸®¸¦ Çü¼ºÇÏ°Ô µÈ´Ù.
  • °¢ ¹öÀü¿¡ ´ëÇÑ Æ¯Â¡µéÀ» ±â·ÏÇÒ ¼ö°¡ ÀÖ¾î, º¸±â¿¡ ÆíÇÏ´Ù. ¾Æ¿ï·¯ ¹öÀü À̸§, »ý¼º ³¯Â¥, ÀúÀÚ(author)µî¿¡ ´ëÇÑ Á¤º¸µµ Á¦°øÇÑ´Ù.
  • ¿©·¯ »ç¿ëÀÚ°¡ ÇϳªÀÇ ÆÄÀÏÀ» Á¢±Ù(access)ÇÔÀ¸·Î ÀÎÇØ ºú¾îÁú ¼ö ÀÖ´Â ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¸¾à ´Ù¸¥ »ç¿ëÀÚ°¡ ³»¿ëÀ» °íÄ¡·Á°í Çϸé RCS´Â °æ°í¸¦ ³»°Ô µÇÁÒ.
  • °á°úÀûÀ¸·Î µð½ºÅ©¸¦ Àý¾àÇØ ÁØ´Ù. Áï ´õÀÌ»óÀÇ temp ÆÄÀÏÀ» ÀúÀåÇÒ ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÌ´Ù. ±Ø´ÜÀûÀÎ °æ¿ì µð·ºÅ丮 Åë°·Î temp·Î ÀúÀåÇϱ⵵ ÇÑ´Ù. RCS¿¡¼­´Â ÀÌ·± ¹«½ÄÇÑ(?) ÀÛ¾÷ÀÌ ´õÀÌ»ó ÇÊ¿äÇÏÁö ¾Ê´Ù.

´ëÃæ ¹«½¼ ¸»À» ÇÏ´ÂÁö ¾Æ½Ã°Ú¾î¿ä? °ð ³ª¿Ã ¿¹Á¦¿Í ¼³¸íÀ» º¸½Ã¸é Àß ¾Æ½Ã°Ô µÉ °Ì´Ï´Ù. (ÇÑ°¡Áö °ÆÁ¤µÇ´Â °ÍÀº ³»¿ëÀÌ ¾ó¸¶ ¾ÈµÉ ÁÙ ¾Ë¾Ò´Âµ¥ ³Ê¹« ¸¹¾Æ¼­ ³¡±îÁö º¸±â¸¦ Æ÷±âÇϽÃÁö ¾ÊÀ¸½Ç Áö ¸ð¸£°Ú³×¿ä.)

3.2. RCS ÀÇ ±¸¼º

Áö±Ý±îÁö RCSÀÇ ±â´Éµé¿¡ ´ëÇؼ­ ¾à°£Àº Áߺ¹µÇ°Ô ¸»¾¸µå·È½À´Ï´Ù. ±×·³ µµ´ëü RCS°¡ ¾î´À µð·ºÅ丮¿¡ ÀÖ´Â ÇÁ·Î±×·¥Àΰ¡, ¸®´ª½º¿¡´Â ÀÌ°ÍÀÌ Àִ°¡ ÇÏ°í Áú¹®ÇϽðÚÁö¿ä.

RCS ´Â ¾Æ·¡ÀÇ ÇÁ·Î±×·¥À¸·Î ÀÌ·ç¾îÁ® ÀÖ´Â °Å´ëÇÑ ÇÁ·Î±×·¥ Áý´ÜÀÔ´Ï´Ù.
  • ci - üũÀÎ(check in)ÇÑ´Ù.
  • co - üũ¾Æ¿ô(check out)ÇÑ´Ù.
  • rcs - RCS ÆÄÀÏÀÇ ¼Ó¼ºÀ» ¹Ù²Û´Ù.
  • ident - RCS ÆÄÀÏÀÇ ÀνÄÇ¥(identification marker)¸¦ Àд´Ù.
  • rcsdiff - RCS ÆÄÀÏÀÇ ¹öÀüµéÀ» ºñ±³ÇÑ´Ù.
  • rcsmerge - ¿©·¯ ¹öÀüÀ» ÇÕÄ£´Ù.
  • rlog - ·Î±×(log) ¸Þ½ÃÁö µîÀÇ Á¤º¸¸¦ Ãâ·ÂÇÑ´Ù.

Àå³­ÀÌ ¾Æ´ÏÁÒ. ±×·¯³ª ³Ê¹« °ÆÁ¤ ¸¶¼¼¿ä. ÀÌÁß¿¡ ¸î °³¸¸ ¾Ë¾Æµµ RCSÀÇ Áø¼ö¸¦ ¸Àº¼ ¼ö Àְŵç¿ä. ci, co, rcs¸¸ ±â¾ïÇÏ°í °è¼¼¿ä.

4. RCS¸¦ »ç¿ëÇØ º¾½Ã´Ù. (ÃʱÞ)

À̹ø ÆíÀº RCSÀÇ ±¸Ã¼ÀûÀÎ ¿¹Á¦ÀÔ´Ï´Ù. ÃÊ±Þ °úÁ¤À» ´Ù·ç±â ¶§¹®¿¡ ¾à°£ º¹ÀâÇÑ ¿ä¼Ò´Â Á¦¿Ü½ÃÄ×½À´Ï´Ù. ¿©±â¼­´Â ci, co, rcs ¸í·É¾îÀÇ ¿¹¸¦ µé¾î Àü°³µË´Ï´Ù.

4.1. ±âº»ÀûÀÎ ci, coÀÇ »ç¿ë¹ý

ÀÌÁ¦ºÎÅÍ º»°ÝÀûÀ¸·Î RCS ¸í·É¾î¸¦ ÀÌ¿ëÇØ º¸±â·Î ÇսôÙ. ±×·³ ¸ÕÀú Áغñ¸¦ Çؾ߰ڱº¿ä. ¿ì¼± RCS¸¦ ¿¬½ÀÇÒ ¼ö ÀÖ´Â Àû´çÇÑ µð·ºÅ丮¸¦ Çϳª ¸¸µå½Å ´ÙÀ½¿¡ °Å±â¿¡¼­ ½ÃÀÛÇսôÙ. ±×¸®°í, RCS ÆÄÀÏÀ» ÀúÀåÇÒ µð·ºÅ丮¸¦ ¸¸µì´Ï´Ù. À̸§Àº 'RCS'. RCS°¡ °íÁ¤ÀûÀ¸·Î ¾²´Â À̸§ÀÔ´Ï´Ù.
% mkdir RCS 

±×¸®°í ¾Æ·¡¿Í °°Àº °£´ÜÇÑ ÆÄÀÏÀ» °¡Áö°í ½ÃÀÛÇÕ´Ï´Ù.

exam.c
/* $Log: RcsTutorial,v $
 * Revision 1.1  2005/02/23 01:46:02  kss
 * 203.237.51.80;;À±ÇöÈ£;;
 * */

#include <stdio.h>

main()
{
     printf(' Hello \n' );
}

À§¿¡¼­ `/* $Log: RcsTutorial,v $ À§¿¡¼­ `/* Revision 1.1 2005/02/23 01:46:02 kss À§¿¡¼­ `/* 203.237.51.80;;À±ÇöÈ£;; À§¿¡¼­ /* */ ¶ó´Â ¾´ ºÎºÐÀÌ º¸À̽ʴϱî? ÀÌ ºÎºÐÀº ¿ø·¡´Â ¾ø¾îµµ µË´Ï´Ù. ÇÏÁö¸¸ °¢ ¹öÀüÀÇ Æ¯Â¡À» ¼Ò½º ÆÄÀÏ¿¡ ±âÀçÇÔÀ¸·Î½á »ç¿ëÀÚ¿¡°Ô Á¤º¸¸¦ Á¦°øÇØ Áֱ⠶§¹®¿¡ Àú´Â ¾²±â·Î ÇÏ°Ú½À´Ï´Ù. Âü°í·Î ÀÌ ºÎºÐÀÌ ¸¸¾à ¾ø´Ù°í °¡Á¤ÇÑ´Ù¸é RCS ÆÄÀÏÀº ¿ø·¡ ¼Ò½º ÆÄÀÏ¿¡ ¾Æ¹«·± Ç¥½Ãµµ ÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ º¸±â¿£ ¾î´À ¹öÀüÀÎÁö Á» ÀÌÇØÇϱ⠾î·Æ°ÚÁÒ. $Log: RcsTutorial,v $ À§¿¡¼­ /* $Log:$ */ ¶ó´Â ¾´ ºÎºÐÀÌ º¸À̽ʴϱî? ÀÌ ºÎºÐÀº ¿ø·¡´Â ¾ø¾îµµ µË´Ï´Ù. ÇÏÁö¸¸ °¢ ¹öÀüÀÇ Æ¯Â¡À» ¼Ò½º ÆÄÀÏ¿¡ ±âÀçÇÔÀ¸·Î½á »ç¿ëÀÚ¿¡°Ô Á¤º¸¸¦ Á¦°øÇØ Áֱ⠶§¹®¿¡ Àú´Â ¾²±â·Î ÇÏ°Ú½À´Ï´Ù. Âü°í·Î ÀÌ ºÎºÐÀÌ ¸¸¾à ¾ø´Ù°í °¡Á¤ÇÑ´Ù¸é RCS ÆÄÀÏÀº ¿ø·¡ ¼Ò½º ÆÄÀÏ¿¡ ¾Æ¹«·± Ç¥½Ãµµ ÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ º¸±â¿£ ¾î´À ¹öÀüÀÎÁö Á» ÀÌÇØÇϱ⠾î·Æ°ÚÁÒ. Revision 1.1 2005/02/23 01:46:02 kss À§¿¡¼­ /* $Log:$ */ ¶ó´Â ¾´ ºÎºÐÀÌ º¸À̽ʴϱî? ÀÌ ºÎºÐÀº ¿ø·¡´Â ¾ø¾îµµ µË´Ï´Ù. ÇÏÁö¸¸ °¢ ¹öÀüÀÇ Æ¯Â¡À» ¼Ò½º ÆÄÀÏ¿¡ ±âÀçÇÔÀ¸·Î½á »ç¿ëÀÚ¿¡°Ô Á¤º¸¸¦ Á¦°øÇØ Áֱ⠶§¹®¿¡ Àú´Â ¾²±â·Î ÇÏ°Ú½À´Ï´Ù. Âü°í·Î ÀÌ ºÎºÐÀÌ ¸¸¾à ¾ø´Ù°í °¡Á¤ÇÑ´Ù¸é RCS ÆÄÀÏÀº ¿ø·¡ ¼Ò½º ÆÄÀÏ¿¡ ¾Æ¹«·± Ç¥½Ãµµ ÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ º¸±â¿£ ¾î´À ¹öÀüÀÎÁö Á» ÀÌÇØÇϱ⠾î·Æ°ÚÁÒ. 203.237.51.80;;À±ÇöÈ£;; À§¿¡¼­ /* $Log:$ */ ¶ó´Â ¾´ ºÎºÐÀÌ º¸À̽ʴϱî? ÀÌ ºÎºÐÀº ¿ø·¡´Â ¾ø¾îµµ µË´Ï´Ù. ÇÏÁö¸¸ °¢ ¹öÀüÀÇ Æ¯Â¡À» ¼Ò½º ÆÄÀÏ¿¡ ±âÀçÇÔÀ¸·Î½á »ç¿ëÀÚ¿¡°Ô Á¤º¸¸¦ Á¦°øÇØ Áֱ⠶§¹®¿¡ Àú´Â ¾²±â·Î ÇÏ°Ú½À´Ï´Ù. Âü°í·Î ÀÌ ºÎºÐÀÌ ¸¸¾à ¾ø´Ù°í °¡Á¤ÇÑ´Ù¸é RCS ÆÄÀÏÀº ¿ø·¡ ¼Ò½º ÆÄÀÏ¿¡ ¾Æ¹«·± Ç¥½Ãµµ ÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ º¸±â¿£ ¾î´À ¹öÀüÀÎÁö Á» ÀÌÇØÇϱ⠾î·Æ°ÚÁÒ. ¶ó´Â ºÎºÐÀº Á¦°¡ ³ªÁß¿¡ ¼³¸íÇÒ ÀÚµ¿ ÀνÄÇ¥(Auto Identification)ÀÇ ÇϳªÀÔ´Ï´Ù.

±×·³ ÀÌÁ¦ RCS ÆÄÀÏÀ» ¸¸µé¾î º¼±î¿ä. ÆÄÀÏÀ» RCS¿¡ ¿Ã¸®´Â ¸í·É¾î°¡ ¹Ù·Î ci(check in)ÀÔ´Ï´Ù. óÀ½ ¹öÀüÀº 1.1ºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù.
% ci exam.c 
RCS/exam.c,v <- exam.c
enter description, terminated with single '.' or end of file:
NOTE: This is NOT the log message!
>> This is our First RCS test file
>> .
initial revision: 1.1
done

RCS ¿¡¼­´Â ¹öÀü 1.1 ÀÇ Æ¯Â¡À» ±â·ÏÇÒ ¼ö ÀÖµµ·Ï ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÕ´Ï´Ù. Àú´Â ±×³É This is our First RCS test file À̶ó°í ±â·ÏÇÏ°Ú½À´Ï´Ù. ¸Þ½ÃÁö¸¦ ¸¶Ä¡·Á¸é '.' À» ÀÔ·ÂÇÏ¸é µË´Ï´Ù. ±×·¯¸é RCS/exam.c,v ¶ó´Â ÆÄÀÏÀÌ ¸¸µé¾îÁöÁÒ. Ãʱ⠹öÀüÀº ÀÌ¹Ì ¸»¾¸µå¸° °Í°ú °°ÀÌ 1.1 ÀÔ´Ï´Ù.

À̶§ ls¸¦ Ãĺ¸½Ã°í ÆÄÀÏÀÌ ¾ø¾îÁ³´Ù°í ³î¶óÁö ¸¶¼¼¿ä. ¾Æ´Ï RCS¿¡ ¹ö±×°¡ ÀÖ´Â °Í ¾Æ´Ï³Ä°í ¹Ý¹®ÇϽô ºÐÀÌ °è½Ã°ÚÁö¿ä. ¾Æ´Õ´Ï´Ù. ¿ì¸®´Â ÆÄÀÏÀ» RCS ¿¡´Ù°¡ ÀúÀåÇÑ °ÍÀÔ´Ï´Ù. ÀúÀ常 ÇÏ¸é ¾ÈµÇ°ÚÁö¿ä. ±×·³ ²¨³»´Â ¹æ¹ýÀ» ¸»¾¸µå¸®ÁÒ. co(check out)À̶ó´Â ¸í·É¾î¸¦ »ç¿ëÇÕ´Ï´Ù.
% co exam.c
RCS/exam.c,v -> exam.c
revision 1.1
done

±×·¯¸é ´Ù½Ã exam.c¶ó´Â ÆÄÀÏÀÌ »ý¼ºÀÌ µË´Ï´Ù. ÀÌ°ÍÀÌ RCS ÀÇ ´ë·«ÀûÀÎ ¸ÞÄ«´ÏÁòÀÔ´Ï´Ù. °£´ÜÇÏÁÒ. exam.c°¡ ¾î¶»°Ô º¯Çß³ª º¼±î¿ä.

`exam.c `
/* $Log: RcsTutorial,v $
 * Revision 1.1  2005/02/23 01:46:02  kss
 * 203.237.51.80;;À±ÇöÈ£;;
 *
* Revision 1.1 1995/10/12 14:22:08 raxis
* Initial revision
* */

#include <stdio.h>

main()
{
     printf(' Hello \n' );
}


¿ø·¡´Â ¾ø´ø ¸Þ½ÃÁö°¡ ÀÜ¶à »ý°å³×¿ä. ÀÌ°ÍÀº RCS¿¡¼­ ÀÚµ¿ÀûÀ¸·Î »ý¼º½ÃÄÑ ÁÖ´Â Á¤º¸µéÀÔ´Ï´Ù. ·Î±× ÆÄÀÏ(log file) À̸§ÀÌ º¸ÀÌ°í¿ä... ¹öÀüÀÌ 1.1 ÀÌ°í 1995/10/12 ¿ÀÈÄ 2½Ã¿¡ ¸¸µé¾ú±º¿ä. ±×¸®°í RCS ÆÄÀÏÀ» »ý¼ºÇÑ »ç¶÷Àº raxis(Á¦ ¸®´ª½ºÀÇ »ç¿ëÀÚ À̸§)À̳׿ä. ¿©±â¼­ ¼Ò¼öÁ¡ ¾ÕÀÇ 1Àº release numberÀ̱¸¿ä, ¼Ò¼öÁ¡ ù° ÀÚ¸®ÀÇ 1Àº level number ¶ó°í ÇÕ´Ï´Ù. ¿©±â¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº 3¹ø° °­Á¿¡¼­ ´Ù·çµµ·Ï ÇÏ°Ú½À´Ï´Ù.

ÇÑ°¡Áö ¾Æ¹«·± ¿É¼ÇÀ» ºÙÀÌÁö ¾Ê°í ±×³É co exam.c¸¸ Çϸé Àбâ Àü¿ë(read only)¸ðµå·Î ¸¸µé¾îÁý´Ï´Ù. Èì. ±×·¯¸é "ÆÄÀÏÀÇ ³»¿ëÀ» ¹Ù²Ù·Á¸é exam.cÀÇ Æ۹̼ÇÀ» ¹Ù²Ù¾î¾ß Çϳª¿ä?" ÇÏ°í ¹¯´Â ºÐÀÌ °è½Ã°Ú³×¿ä. ¾Æ´Õ´Ï´Ù.

co ÀÇ ¿É¼ÇÁß¿¡ -l(lockÀ» ÀǹÌ)ÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ºÙÀ̸é exam.c¸¦ »ý¼º½ÃÄÑ Áִµ¥ ¾²±â(write)°¡ °¡´ÉÇϵµ·Ï ÇÕ´Ï´Ù.
% co -l exam.c
RCS/exam.c,v -> exam.c
revision 1.1 (locked)
done

±×·±µ¥ ¾Æ±î¶û ¸Þ½ÃÁö°¡ ¾à°£ ´Ù¸£Áö¿ä. (locked)¶ó´Â ¸»ÀÌ Ãß°¡ µÇ¾ú½À´Ï´Ù. 'lock'ÀÇ ¶æÀÌ ÀÚ¹°¼è¶ó´Â °ÍÀ» ¾Æ½Ã³ª¿ä. ¾²±â °¡´ÉÇÏ°Ô ÇÏ´Â °Í°ú ÀÚ¹°¼è¸¦ ´Ù´Â °ÍÀÌ ¹«½¼ °ü°èÀϱî¿ä? (ÀÌ»óÇÏÁÒ?)

Á¦°¡ RCSÀÇ ±â´ÉÀ» ¼³¸íÇÑ ºÎºÐ¿¡ RCS´Â ¿©·¯ »ç¿ëÀÚ°¡ ÇϳªÀÇ ÆÄÀÏÀ» Á¢±ÙÇÔÀ¸·Î½á »ý±â´Â ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Ù°í Çß½À´Ï´Ù. ´Ù¸¥ »ç¿ëÀÚ°¡ ³»¿ëÀ» °íÄ¡·Á°í ÇÏ¸é ¸Þ½ÃÁö¸¦ ³½´Ù°í ÇßÁÒ. ±×·¯´Ï±î RCSÆÄÀÏÀ» ¸¸µç »ç¶÷ÀÌ ¾Æ´Ï¶ó¸é Àý´ë·Î ±× ÆÄÀÏ¿¡ lockÀ» °É ¼ö°¡ ¾ø½À´Ï´Ù. ¿À·ÎÁö co exam.c¸¸ °¡´ÉÇÏ´Ù´Â °ÍÀÔ´Ï´Ù.(Àб⸸) ±×·³ »ó´ëÀûÀ¸·Î RCSÆÄÀÏÀ» ¸¸µç »ç¶÷Àº ±× ¹Ý´ë·Î ¾²±â°¡ °¡´ÉÇÏ¿©¾ß µÈ´Ù´Â °á·ÐÀÌ À̸£°Ô µÇ³×¿ä. ¾à°£ ÀÌ»óÇÑ °á·ÐÀÌÁö¸¸ Çö½ÇÀÌ ±×·±°É ¾î¼°Ú½À´Ï´Ù. (^^)

´Ù¸¥ »ç¶÷ÀÌ ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù°í °¡Á¤ÇÕ´Ï´Ù. Áï RCS µð·ºÅ丮¸¦ ÀÚ½ÅÀÇ µð·ºÅ丮·Î ¸µÅ©(link)½ÃÄѼ­, exam.c¸¦ check out ÇÕ´Ï´Ù.
%co -l exam.c
co error: RCS/exam.c,v: Permission denied

%co exam.c
RCS/exam.c,v -> exam.c
revision 1.1
done

Á¦ÀÛ ¼³¸í µå¸° ´ë·Î ¿ª½Ã lock¸¦ °É ¼ö°¡ ¾ø±º¿ä. ÆÄÀÏÀÇ ¸ðµå¸¦ Çѹø »ìÆ캾½Ã´Ù. Àб⠸ðµå·Î¸¸ µÇ¾î ÀÖ°ÚÁÒ.
%ls -al exam.c
1 -r--r--r-- 1 guest users 157 Oct 12 23:48 exam.c

´Ù½Ã Çѹø ¸»¾¸µå¸³´Ï´Ù. ÀÌ¹Ì lockÀÌ °É·Á ÀÖ´Â ÆÄÀÏÀº ´Ù¸¥ »ç¶÷ÀÌ Àý´ë·Î ±× ³»¿ëÀ» °Çµå¸®Áö ¸øÇÕ´Ï´Ù. Èì. µ¥ÀÌÅÍÀÇ ¾ÈÀü¼ºÀ» º¸ÀåÇϳ׿ä. ±×·±µ¥ RCS ¸ñ·Ï¿¡ ¿Ã¸± ¶§¸¶´Ù ci, co¸¦ ÀÏÀÏÀÌ ´Ù ¾´´Ù¸é Á» ±ÍÂúÀº ÀÛ¾÷ °°Àº ±âºÐÀÌ µé °Ì´Ï´Ù. ±×·¡¼­ ci ¿É¼Ç¿¡µµ -l (lock) ÀÌ ÀÖ½À´Ï´Ù. Áï, ci -l exam.c ¶ó°í ÇÑ´Ù¸é RCS/exam.c,v ¶õ ÆÄÀÏÀ» º¯°æÇÏ°Ô µÇ°í ¿ø·¡ exam.c´Â °í´ë·Î ³õ¾ÆµÎ°Ô µÇÁÒ.

±×·³ À̹ø¿£ exam.c¸¦ ÀÏÁÖÀÏ µ¿¾È »ý°¢Çؼ­ ¹öÀü¾÷À» Çϱâ·Î °áÁ¤Çß½À´Ï´Ù. print¶ó´Â ÇÔ¼ö¸¦ Ãß°¡Çϱâ·Î ÇÑ °ÍÀÌÁÒ. ¹ãÀ» »õ´Â µð¹ö±× ³¡¿¡ µåµð¾î ´ÙÀ½ ¹öÀüÀ» ¿Ï¼º½ÃÄѼ­ RCS¿¡ ´Ù½Ã µî·Ï½ÃÅ°±â·Î ÇÏ°Ú½À´Ï´Ù.
% ci -l exam.c ( -l ÀÌ ¹«½¼ ÀǹÌÀÎÁö ¾Æ½Ã°ÚÁÒ )
RCS/exam.c,v <- exam.c
new revision: 1.2; previous revision: 1.1
enter log message, terminated with single '.' or end of file:
>> function print() is added (ŸÀÌÇÎÇÏ´Â ºÎºÐÀÌÁÒ.)
>> .
done

¹öÀüÀÌ 1.2·Î ¿Ã¶ó°¬±º¿ä. »ÑµíÇÕ´Ï´Ù. ÀÚ½ÅÀÇ ÇÁ·Î±×·¥µµ ÀÌ·¸°Ô ÈûÂ÷°Ô ¹öÀü¾÷À» ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ±×·³ ±× °á°ú¸¦ Çѹø º¾½Ã´Ù.

exam.c
/* $Log: RcsTutorial,v $
 * Revision 1.1  2005/02/23 01:46:02  kss
 * 203.237.51.80;;À±ÇöÈ£;;
 *
* Revision 1.2 1995/10/12 15:05:58 raxis
* function print() is added
*
* Revision 1.1 1995/10/12 14:22:08 raxis
* Initial revision
* */ 

#include <stdio.h> 

void print( char* pszMsg )
{
     puts( pszMsg);
}

main()
{
     print(' Hello ');
}

¹öÀü 1.2°¡ º¸À̽ÃÁÒ. 1.2°¡ ¸¸µé¾îÁø ³¯Â¥µµ º¸À̱¸¿ä. raxis¶õ ºÐ²²¼­ ´Ù½Ã ¹öÀü¾÷À» ÇØÁּ̱º¿ä. ±×·±µ¥ À§¿¡¼­ RCSÀÇ ¸ðµç ¸Þ½ÃÁöµéÀº ¸ðµÎ ÄÚ¸àÆ®(comment)󸮵Ǿî ÀÖ´Ù´Â °ÍÀ» ´«Ä¡Ã¤¼Ì´ÂÁö.. Áï ÄÄÆÄÀÏÇÒ¶§ RCSºÎºÐÀº ¾ø´Â °Å³ª ¸¶Âù°¡Áö°ÚÁÒ(´ç¿¬ÇÑ ¼Ò¸®).

Á¦°¡ 1ºÎ¿¡¼­ RCS·Î °ü¸® ÇÒ ¼ö ÀÖ´Â ÆÄÀÏÀº C ÇÁ·Î±×·¥ ¼Ò½º¸¸ÀÌ ¾Æ´Ï¶ó°í ÇßÁö¿ä. ±â¾ïÀÌ ³ª½Ç·±Áö... RCS´Â ÀϹÝÀûÀ¸·Î C(.c), ÆĽºÄ®(.p), C++(.cc, .C), latex(.tex) µîÀÇ ÇÁ·Î±×·¥Àº È®ÀåÀÚ¿¡ ±âÃÊÇؼ­ ÄÚ¸àÆ® ¸¶Å©¸¦ ´Þ°Ô µË´Ï´Ù. ±×¸®°í ³ª¸ÓÁö ÆÄÀϵ鿡 ´ëÇؼ­´Â ´ëºÎºÐÀÇ UNIX ½© ½ºÅ©¸³Æ®¿¡¼­ ÄÚ¸àÆ®·Î »ç¿ëµÇ´Â '#' ¸¶Å©¸¦ »ç¿ëÇÏ°Ô µÇ´Âµ¥..(Á» ¸ÛûÇÑ°¡¿ä... ÈÄÈÄ.) ±×·³ postscript¿Í °°ÀÌ '%'¸¦ ÄÚ¸àÆ®·Î ó¸®ÇÏ´Â ÆÄÀϵéÀº ¾î¶»°Ô ÇÒ±î¿ä.
% rcs -c'%' beauty.ps

rcs¶ó´Â ¸í·É¾î´Â RCS ÆÄÀÏÀÇ ¼Ó¼ºÀ» ¹Ù²Û´Ù´Â °ÍÀ» ±â¾ïÇÏ°í °è½Ã³ª¿ä. beauty.ps·ÎºÎÅÍ ¸¸µé¾îÁø RCS ÆÄÀÏÀÇ ÄÚ¸àÆ® ºÎºÐÀº '%'¸¶Å©¸¦ »ç¿ëÇ϶ó´Â ¸í·É¾îÀÔ´Ï´Ù.

Âü°í

RCS ¿¡ ´ëÇÑ ÀÔ¹®Àº man rcsintro¸¦ ÇÏ½Ã¸é µË´Ï´Ù. RCS ¿¡ ´ëÇÑ ¼³¸íÀÌ ¾ÆÁÖ ±ä ¿µ¾î·Î ³ª¿É´Ï´Ù. Çؼ®ÇϽø鼭 ¸Ó¸®¸¦ Çѹø ½ÄÇô º¸½ÉÀÌ... ^^ ±×¸®°í, ci, co, rcs ¿¡ ´ëÇؼ­ ´õ Àß ¾Ë°í ½ÍÀ¸½Å ºÐÀº manÀ» ÀÌ¿ëÇØ º¸½ÃÁÒ. UNIX¿¡¼­ Àü¹®°¡°¡ µÇ±â À§Çؼ­´Â ¸Å´º¾óÀ» ¿­½ÉÈ÷ ºÁ¾ß µÈ´Ù°í ÇÏ´Â Àü¼³(?)ÀÌ ÀÖ½À´Ï´Ù.

5. RCS¸¦ »ç¿ëÇØ º¾½Ã´Ù. (°í±Þ)

5.1. RCS¿¡¼­ÀÇ ¹öÀü (¹öÀüÆ®¸®)

RCS¸¦ »ç¿ëÇؼ­ ÀÚ²Ù ¹öÀü¾÷(version up)À» ÇÏ´Ù º¸¸é ÇÑ ÁÙ·Î À̾ ¹öÀüÀÌ ¸¸µé¾îÁú ²®´Ï´Ù. ¹öÀüÆ®¸®ÀÇ °³³äÀ» ¼³¸íÇϱâ Àü¿¡ RCS¿¡¼­ÀÇ ¹öÀü ü°è¿¡ ´ëÇؼ­ ¸»¾¸µå¸®ÁÒ. RCSÆÄÀÏÀÌ Ã³À½À¸·Î ¸¸µé¾îÁö¸é 1.1ºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù. ±×¸®°í ´ÙÀ½ ¹öÀüÀº 1.2,1.3 ÀÌ·¸°Ô ¼Ò¼öÁ¡ ÀÌÇÏÀÇ ¼ýÀÚ¸¸ °è¼Ó ´Ã¾î³ª°Ô µË´Ï´Ù. °áÄÚ 2.0ÀÇ ÆÄÀÏÀº ¸¸µé¾îÁöÁö ¾Ê½À´Ï´Ù. RCS¿¡¼­´Â °­Á¦ÀûÀ¸·Î ¹öÀü¾÷À» ½Ãų ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù.
% ci -r2.0 -l exam.c

À§¿Í °°ÀÌ ÇÏ¸é ¹öÀü 2.0À¸·Î °­Á¦ÀûÀ¸·Î ¸¸µé ¼ö°¡ ÀÖ½À´Ï´Ù. ¿©±â¼­ -r Àº revisionÀ» ¶æÇÏ´Â ¿É¼ÇÀÔ´Ï´Ù. À§ÀÇ ¿¹Á¦´Â exam.c¸¦ ¹öÀü 2.0À¸·Î ¿Ã¸®°í µ¿½Ã¿¡ lockµµ °É¶ó´Â Ç¥½ÃÀÔ´Ï´Ù. ¹öÀüÀÌ 2.0ÀÌ µÇ°í ºÎÅÍ´Â ci¸¦ ÇÏ¸é ´Ù½Ã 2.1 -> 2.2 -> 2.3 ÀÇ ¼ø¼­·Î ¹öÀüÀÌ Áõ°¡ÇÕ´Ï´Ù.

±×·¸´Ù¸é °¢ ¹öÀüÀÇ ÆÄÀÏÀ» Ç® ¼öµµ ÀÖ°Ú±º¿ä.
% co -r1.2 -l exam.c

À§¿Í °°ÀÌ Çϸé exam.c°¡ ¾î¶»°Ô µÇ¾î ÀÖ´õ¶óµµ ¹öÀü 1.2 ¿¡ ÇØ´çÇÏ´Â RCS ÆÄÀÏÀÌ Ç®·Á³ª¿É´Ï´Ù. ±×³É co -l exam.c¶ó°í¸¸ ÇÑ´Ù¸é exam.cÀÇ °¡Àå ³ôÀº ¹öÀüÀÌ Ç®·Á³ª¿É´Ï´Ù. ¸¸¾à ÇÊ¿ä¿¡ ÀÇÇØ 1.2 ¹öÀüÀ» ¸î °¡Áö °íÄ£ ´ÙÀ½¿¡ ´Ù½Ã ÀÌ°ÍÀ» RCS¿¡ ¿Ã¸°´Ù°í °¡Á¤ÇÕ´Ï´Ù. ±×·³ ´ÙÀ½ ¹öÀüÀº ¹«¾ùÀϱî¿ä? ´äÀº °¡Àå ³ôÀº ¹öÀüÀÇ ´ÙÀ½ ¹öÀüÀÔ´Ï´Ù. Áï 2.1ÀÌ µÇ°Ú±º¿ä.

±×·±µ¥ ÇÑ°¡Áö ³í¸®ÀûÀ¸·Î ÀÌ»óÇÏÁö ¾Ê³ª¿ä. ´ÙÀ½ÀÇ ¹öÀü Æ®¸®¸¦ Çѹø º¾½Ã´Ù.
+-----+     +-----+     +-----+      +-----+
| 1.1 |---->| 1.2 |---->| 2.0 |      | 2.1 |                                
+-----+     +--+--+     +-----+      +--+--+
               |                        |
               +------------------------+

°¢ 2.0ÀÇ ´ÙÀ½ÀÌ 2.1Àε¥ 1.2 ¹öÀüÀÇ ´ÙÀ½ÀÌ 2.1À̶ó´Ï ¸»ÀÔ´Ï´Ù. ¿ÏÀüÈ÷ ÇҾƹöÁö ´ÙÀ½¿¡ ¾Æ¹öÁö »©°í ¾Æµé·Î ¹Ù·Î ³»·Á°¡´Â °Å¶û °°±º¿ä. ±×·³ 2.0À» ¹Ù²Ù¸é ´ÙÀ½Àº 2.2°¡ µÇ°Ú±º¿ä. ÀÌ°ÍÀº ¹öÀüÀÇ ¿¬¼Ó¼ºÀÌ ±ú¾îÁö°Ô µÇ´Â ³ª»Û °á°úÀÔ´Ï´Ù.

RCS¿¡¼­´Â ¹öÀüÀÇ ¿¬¼Ó¼ºÀ» º¸ÀåÇϱâ À§Çؼ­ branch ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. °¡·É 1.2¸¦ ¼öÁ¤ÇÑ ÈÄ ÀÌ°ÍÀ» ´Ù¸¥ ¹öÀüÀ¸·Î ´Ù½Ã °ü¸®ÇÏ°í ½Í´Ù°í »ý°¢ÀÌ µé ¶§ ¹öÀüÀ» 1.2.1·Î ÀúÀåÇÏ´Â °ÍÀÔ´Ï´Ù. ¸Ç ³¡ÀÇ 1Àº branch number¸¦ °¡¸®Å²´Ù°í »ý°¢ÇÏ½Ã¸é µË´Ï´Ù. 1.2.1ÀÇ Ã¹ ¹ø° branch ´Â 1.2.1.1·Î ½ÃÀÛÇÕ´Ï´Ù. ±×·¯´Ï±î ¾ÕÀÇ 1.2¸¦ »©¸é ´Ù½Ã ¹öÀüÀÌ 1.1·Î ½ÃÀÛÇÏ´Â °Í°ú °°´Ù°í ÇÒ ¼ö°¡ ÀÖ±º¿ä. ÀÌ°ÍÀ» ¹öÀü Æ®¸®·Î Ç¥ÇöÇÑ´Ù¸é ¾Æ·¡¿Í °°ÀÌ µÉ ¼ö°¡ ÀÖ½À´Ï´Ù.
+-----+     +-----+     +-----+      +-----+      +-----+
| 1.1 |---->| 1.2 |---->| 2.0 |----->| 2.1 |----->| 2.2 |
+-----+     +--+--+     +-----+      +-----+      +-----+
               |
            +--+----+     +--------+
            |1.2.1.1|---->|1.2.1.2 |
            +-------+     +--------+

¹öÀü Æ®¸®¸¦ º¸´Ï±î ´ëÃæ ÀÌÇØ°¡ µÇ½ÃÁÒ. ±×·±µ¥ ¶Ç ÇÑ°¡Áö ¹®Á¦°¡ ÀÖ½À´Ï´Ù. ¹¹³Ä Çϸé 1.2.1.1 À» °íÃļ­ ci½ÃÅ°¸é ¿¡·¯°¡ ³­´Ù´Â °ÍÀÔ´Ï´Ù. ¿ø·¡´Â 1.2.1.2 °¡ µÇ¾î¾ß Çϴµ¥ ¸»ÀÔ´Ï´Ù. Áï ¾Æ·¡¿Í °°ÀÌ
%ci -l exam.c
RCS/exam.c,v <- exam.c
ci error: multiple revisions locked by raxis; please specify one

ÀÌ°Ô ¹«½¼ ³¯º­¶ô °°Àº ¼Ò¸®. lockÀÌ ¿©·¯°³°¡ °É·ÁÀÖ´Ù´Ï¿ä. lockÀ» ÀßÀº ¸ð¸£Áö¸¸ Çϳª¹Û¿¡ °ÉÁö ¾ÊÀº °Í °°Àºµ¥ ¸»ÀÔ´Ï´Ù. ±×·³ RCS/exam.c,vÀÇ ³»¿ë(À­ºÎºÐ)¸¸ Àá½Ã º¸±â·Î ÇÒ±î¿ä. ¹®Á¦ÀÇ ´äÀÌ Àֱ⠶§¹®ÀÌÁÒ.

`RCS/exam.c,v `
head 2.0;
access;
symbols;
locks
raxis:1.2.1.1
raxis:1.2
raxis:2.0; strict;
comment @ * @;

À§¿¡ º¸¸é locks ¶ó´Â °÷ÀÌ º¸À̽ʴϱî? Èì... ¾Ë°Ô ¸ð¸£°Ô lockÀÌ 3±ºµ¥³ª °É·Á ÀÖ±º¿ä. À§¿¡¼­ strict¶ó°í ¾²¿©Áø ºÎºÐÀº Àúµµ ¾ÆÁ÷ ÀßÀº ¸ð¸£Áö¸¸ ÁüÀÛÄÁ´ë ¾Æ¸¶µµ ¹öÀü Æ®¸®°¡ Çü¼ºµÉ °¡¸Á¼ºÀÌ ÀÖ´Â ºÎºÐÀ» °¡¸®Å°°í ÀÖ´Â °Í °°½À´Ï´Ù. Á¦°¡ ¿©·¯ °¡Áö Å×½ºÆ®¸¦ °ÅÃļ­ ¾òÀº °á·ÐÀº strict°¡ ÀÖ´Â ¹öÀüÀ» Áß½ÉÀ¸·Î ¹öÀü Æ®¸®°¡ Çü¼ºµÈ´Ù´Â °ÍÀÔ´Ï´Ù. 1.2 ¿¡ ¸¸¾à strict°¡ ÀÖ´Ù¸é ÀÌ°ÍÀº 1.2.2 (µÎ¹ø° branch)°¡ Çü¼ºµÉ ¼ö ÀÖ´Ù´Â ¸»ÀÌ µË´Ï´Ù.

±×·³ strict ¶ó´Â °ÍÀÌ 1.2.1.1¿¡ ¿À°Ô ÇÏ¸é µÇ°Ú±º¿ä. ¸Â½À´Ï´Ù. °á·ÐÀº 2.0°ú 1.2ÀÇ lock¸¦ ÇØÁ¦ÇØ¾ß ÇÑ´Ù´Â ¸»ÀÌ µÇ´Â±º¿ä. °­ÁÂ1¿¡¼­ rcs¶õ ¸í·É¾î´Â RCSÆÄÀÏÀÇ ¼Ó¼ºÀ» ¹Ù²Û´Ù°í Çß½À´Ï´Ù. rcsÀÇ ¿É¼ÇÁß¿¡ º¸¸é -u°¡ ÀÖ½À´Ï´Ù. unlock À̶õ ¶æÀÌ µË´Ï´Ù.
% rcs -u2.0 exam.c
RCS file: RCS/exam.c,v
2.0 unlocked
done

% rcs -u1.2 exam.c
RCS file: RCS/exam.c,v
1.2 unlocked
done

ÀÌÁ¦´Â strict °¡ 1.2.1.1 ¿¡ ÀÖ´Â °ÍÀ» º¸°Ô µÇ½Ç °Ì´Ï´Ù. locks¶ó°í ºÒ¸° °÷¿¡´Â strict°¡ ÀÖ´Â ¹öÀü Çϳª¸¸ Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù. ³ª¸ÓÁö´Â ¸ðµÎ unlock ½ÃÄѼ­ ¾ø¾Ö¾ß µÇ°Ú±º¿ä. ÀÌÁ¦ºÎÅÍ´Â 1.2.1·ÎºÎÅÍ ¹öÀü Æ®¸®°¡ Çü¼ºµË´Ï´Ù. ¸¸¾à ¹öÀü 2.0¿¡¼­ ¹öÀü Æ®¸®¸¦ Çü¼ºÇÏ°í ½ÍÀ¸½Ã´Ù¸é ¾Æ·¡¿Í °°ÀÌ Çϼ¼¿ä.
% rcs -u1.2.1 exam.c
% rcs -l2.0 exam.c

Âü°í

»ç½Ç ¹öÀü Æ®¸® ºÎºÐÀº Ãʺ¸ÀÚ°¡ º¸±â¿£ Âü ¾Ö¸Å¸ðÈ£ÇÑ ºÎºÐÀÔ´Ï´Ù. ¶Ç lockÀ̶ó´Â °³³ä ÀÚüµµ ¾î·ÆÁÒ. Á˼ÛÇÕ´Ï´Ù. ´õ ÀÌ»ó ¼³¸íÀ» ½±°Ô ÇÒ ¼ö°¡ ¾ø³×¿ä. ±×·¯³ª ¹öÀü¾÷ÀÌ µÉ ¶§ ¹öÀü Æ®¸®°¡ Çü¼ºµÈ´Ù´Â °ÍÀº ±â¾ïÇÏ°í °è¼¼¿ä. ¸ðµç °ÍÀ» ¹öÀü Æ®¸®·Î ÀÌÇØÇϸé À§ÀÇ °Íµµ ´ëÃæ ÀÌÇØ°¡ µÉ °Ì´Ï´Ù.

5.2. Auto Identification ±â´É

ÀÌÁ¦ Á» È­Á¦¸¦ ´Ù¸¥ µ¥·Î µ¹¸®±â·Î ÇÏÁÒ. º¸Åë Á¦Ç°À» »ý»êÀ» ÇÑ´Ù¸é ±× Á¦Ç°¿¡´Â »ý»ê ³¯Â¥, »ý»êÁö µîµîÀÇ Á¤º¸°¡ ÂïÇôÁö°Ô µÇÁÒ. RCS¿¡¼­´Â ÀÌ¿Í À¯»çÇÑ °ÍÀ» Áö¿øÇÕ´Ï´Ù. Áï, ¼Ò½º¿Í ¸ñÀû ÄÚµå(object code)¿¡ ÀÚ½ÅÀÇ ÇÁ·Î±×·¥ÀÓÀ» È®½Å½ÃÄÑ Áִ Ưº°ÇÑ ¹®ÀÚ¿­À» »ðÀÔÇÏ°Ô µÇÁÒ.

¼Ò½º¿¡ ¾Æ·¡¿Í °°Àº ¶óÀÎÀ» Ãß°¡ÇØ º¾½Ã´Ù.
static char rcsid[] = '$Id: RcsTutorial,v 1.1 2005/02/23 01:46:02 kss Exp kss $' ;

±×·³ RCSÀÇ ci ¸í·É¾î ÀÌÈÄ¿¡´Â ´ÙÀ½°ú °°Àº ÇüÅ·Π¹Ù²î¾îÁ® ÀÖ½À´Ï´Ù.
static char rcsid[] = '$Id: exam.c,v 1.1
1995/10/13 14:54:09
raxis Exp raxis (ÁÙÀÌ ±æ¾î¼­ ºÐ¸®)

»ý¼º³¯Â¥, ½Ã°£, ¸¸µçÀÌ µîµîÀÇ Á¤º¸°¡ ³ª¿Í ÀÖ±º¿ä. ÇÁ·Î±×·¥ ³»ºÎ¿¡¼­ static º¯¼öÀ̹ǷΠ´ç¿¬È÷ ÇÁ·Î±×·¥ ÄÄÆÄÀÏ°ú ÇÔ²² ÇÁ·Î±×·¥¿¡ ¿µ¿øÈ÷(?) ³»ÀåÀÌ µÇ°ÚÁö¿ä. ´©°¡ ÀڱⲨ ÈÉÃÄ °¡µµ ±Ý¹æ ¾Ë ¼ö°¡ ÀÖ°ÚÁÒ.

¿ì¸®°¡ Áö±Ý±îÁö ¾Æ¹« »ý°¢ ¾øÀÌ ½á ¿Â $Log: RcsTutorial,v $ ¿ì¸®°¡ Áö±Ý±îÁö ¾Æ¹« »ý°¢ ¾øÀÌ ½á ¿Â Revision 1.1 2005/02/23 01:46:02 kss ¿ì¸®°¡ Áö±Ý±îÁö ¾Æ¹« »ý°¢ ¾øÀÌ ½á ¿Â 203.237.51.80;;À±ÇöÈ£;; ¿ì¸®°¡ Áö±Ý±îÁö ¾Æ¹« »ý°¢ ¾øÀÌ ½á ¿Â ¶ó´Â °Íµµ ÀÚµ¿ ÀνÄÇ¥ÀÇ ÇϳªÀÔ´Ï´Ù. ¿¹Á¦¿¡¼­ º¸´Ù½ÃÇÇ °¢ ¹öÀü¿¡ ´ëÇÑ ¸ðµç Á¤º¸°¡ ¼Ò½º ÆÄÀÏ¿¡ Ç¥½Ã°¡ µÇ°Ô µÇÁÒ. ´ë½Å ÀÌ°ÍÀº ÄÚ¸àÆ®(comment)¾È¿¡ ÀÖÀ¸¹Ç·Î ÄÄÆÄÀÏÇÒ¶§ ¾ø´Â °Å³ª ¸¶Âù°¡Áö°ÚÁÒ. Id¿ÍÀÇ Â÷ÀÌÁ¡ÀÔ´Ï´Ù.

5.3. rlog, rcsdiff ¸í··¾î

rlog´Â log¸Þ½ÃÁö¸¦ Ãâ·ÂÇÏ´Â °ÍÀÔ´Ï´Ù. ±×¸®°í rcsdiff ´Â RCS ÆÄÀÏ¿¡¼­ °¢ ¹öÀü°£ÀÇ Â÷À̸¦ diff À¯Æ¿¸®Æ¼ÀÇ Ãâ·Â °á°ú¿Í °°Àº ÇüÅ·ΠÃâ·ÂÇÕ´Ï´Ù.
% rlog exam.c
(exam.cÀÇ log ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÑ´Ù.)

% rcsdiff -r1.2 -r2.0 exam.c
(exam.c¿¡¼­ 1.2 ¹öÀü°ú 2.0 ¹öÀüÀ» ºñ±³ÇÑ´Ù.)

µÎ ¸í·É¾î ¸ðµÎ ÇÊ¿äÇؼ­ ÀÖ°ÚÁö¸¸ Á¦ »ý°¢À¸·Î´Â º°·Î ¾µ ÇÊ¿ä´Â ¾ø´Â °Í °°½À´Ï´Ù. ¿ì¼± ¸ðµç ¸Þ½ÃÁö°¡ ¼Ò½º ÆÄÀÏ¿¡ ÀÖÀ¸´Ï±î rlog°¡ ÇÊ¿ä¾ø±¸¿ä, rcsdiff¿¡ ÀÇÇÑ Ãâ·Â °á°ú´Â º¸Åë½Ã¶÷ÀÌ º¸±â¿£ Âü ¾îÁö·´±â ¶§¹®¿¡ ¶Ç ÇÊ¿ä°¡ ¾ø±¸... °á·ÐÀº ci, co, rcs¸¸ Àß ¾Ë°í ÀÖÀ½ µÈ´Ù´Â ¼Ò¸®Áö¿ä.

5.4. GNU make¿ÍÀÇ ¿¬°á

GNU make¿Í RCS´Â Âû¶±±ÃÇÕÀ̶ó°í ÇÒ¸¸Å­ ¼­·Î ÀνÄÀ» ÀßÇÕ´Ï´Ù. Áï make°¡ MakefileÀÇ ³»ºÎ¿¡¼­ ÀÇÁ¸¼º(dependency - ÀÌ°ÍÀÌ ¸óÁö ¾Æ½Ç·±Áö. Make °­Á¿¡¼­ ÀÚ¼¼ÇÏ°Ô ÇÏÁÒ.)À» Á¶»çÇÏ´Ù°¡ ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é ÀÚµ¿ÀûÀ¸·Î RCS µð·ºÅ丮¸¦ µÚÁ®¼­ co ¸í·É¾î¸¦ ¾Ë¾Æ¼­ ¼öÇà½ÃŲ´Ù. µû¶ó¼­ °¡Àå ÃֽŠ¹öÀüÀÇ ÆÄÀϵéÀÌ ÀÚµ¿ÀûÀ¸·Î ÄÄÆÄÀϵǴ ÀÌÁ¡À» ´©¸± ¼ö°¡ ÀÖ´Ù. RCS¿¡¼­ ÀÐÇôÁø ÆÄÀϵéÀº ÄÄÆÄÀÏÀÌ ¼º°øÇϸé ÀÚµ¿ÀûÀ¸·Î »èÁ¦°¡ µÇ¹Ç·Î µð½ºÅ© °ø°£µµ ¾Æ³¥ ¼ö°¡ ÀÖ´Ù.

¿©±â¼­ ÇÑ°¡Áö ´õ. Makefile ÀÚüµµ RCS ÆÄÀÏ·Î ¸¸µé¾î Áú ¼ö ÀÖ´Ù´Â °Í. Áï, make ¸í·É¾î¸¦ ¼öÇà½ÃÄ״µ¥ MakefileÀÌ ¹ß°ßµÇÁö ¾ÊÀ» ¶§ RCS¿¡¼­ Makefile,v¸¦ ã¾Æ¼­ ÀÚµ¿ÀûÀ¸·Î Makefile À» Ǭ´Ù´Â °Í. (»ó´çÈ÷ ¶È¶ÈÇÏÁö¿ä.)

6. ¾ðÁ¦ RCS¸¦ »ç¿ëÇØ¾ß ÇÒ±î¿ä?

6.1. RCS·Î ÀÎÇÑ Æĸê(?)

RCS¸¦ »ç¿ëÇÔÀ¸·Î½á »ý±æ ¼ö ÀÖ´Â ¹®Á¦Á¡ÀÌ ¹«¾ùÀÎÁö ¾Ë¾Æº¾½Ã´Ù.
  • ÇÁ·Î±×·¥À» ÀÜ¶à °íÃļ­ ci¸¦ ÇÏ·Á°í Çߴµ¥ À߸øÇؼ­ co¸¦ Çß´õ´Ï ÆÄÀÏÀ» µ¤¾î ½è´Ù. ±×·¡¼­ °íÄ£°Ô ¸»Â¯ µµ·ç¹¬ÀÌ µÇ¾î ¹ö·È´Ù.
  • branch °¡ ¸¹¾ÆÁüÀ¸·Î ÀÎÇØ ±¸Á¶°¡ º¹ÀâÇØ Á³´Ù. Â÷¶ó¸® ¿¾³¯Ã³·³ temp1, temp2 ÇÏ´ø ¶§°¡ ´õ ÆíÇß´Ù.
  • ¾ðÁ¦ ci¸¦ ÇÏ´ÂÁö ¸ð¸£°Ú´Ù. ÇÔ¼ö ¸î °³ Ãß°¡ÇÒ ¶§¸¶´Ù ci¸¦ ¼öÇàÇß´õ´Ï ³ªÁß¿¡ ¸Þ½ÃÁö ºÎºÐÀÌ ³Ê¹« ¸¹¾Æ¼­ ´«¿¡ °Å½½·È´Ù. ±×·¡¼­ ¸Þ½ÃÁö ¸ù¶¥ ´Ù Áö¿ì°í ´Ù½Ã ¹öÀü 1.1ºÎÅÍ ½ÃÀÛÇß´Ù.
  • lock À̶õ °Í ¶§¹®¿¡ º¹ÀâÇØ Á×°Ú´Ù. ÀÚ²Ù ¿¡·¯¸¦ ³½´Ù.

´ëÃæ ÀÌ·± °ÍÀÌ ÀÖÁö ¾ÊÀ»±î¿ä. ¹öÀüÀ» Á¦¾îÇÑ´Ù´Â °ÍÀÌ ¸ÚÀÖ´Â °ÍÀ̱â´Â ÇÏÁö¸¸ À߸øÇÏ¸é °ÅÀÇ ¸ÁÇÏÁÒ. ÀÏÀÇ ¼Óµµ¸¸ ´õ ´À·ÁÁö°í. ÇÏÁö¸¸ ÀÏ´Ü Àͼ÷ÇØÁö±â¸¸ Çϸé RCSÀÇ °í¸¶¿òÀ» ´À³¢°Ô µÉ ²®´Ï´Ù.

6.2. RCS »ç¿ëÀÇ ±âº»ÀûÀÎ Áöħ(guideline)

±×·³ RCS¸¦ »ç¿ëÇÔ¿¡ ÀÖ¾î ¹«¾ùÀΰ¡ ÁöħÀÌ ¾øÀ»±î. Àß ¾²½Ã´Â ºÐµé¿¡°Õ ÀúÀÇ ¸»ÀÌ Æ²¸° °Íó·³ µé¸± ¼ö°¡ ÀÖ½À´Ï´Ù¸¸. ±×µé ³ª¸§´ë·ÎÀÇ Ã¶ÇÐÀ» °¡Áö°í ÇϽô ÀÏÀ̶ó¼­. ±×·³ ¾î¶² ÁöħÀÌ ÀÖ´ÂÁö ¾Ë¾Æº¸ÁÒ.

RCS ¿¡¼­ °¡Àå Áß¿äÇÑ °ÍÀº ¾ðÁ¦ ci, co¸¦ ÇÏ´À³Ä ÀÔ´Ï´Ù. ¿©±â¿¡´Â ÀúÀÇ ¾ÆÁÖ ½Ç·Â ÁÁÀº ¼±¹è´ÔÀÇ ÁöħµéÀ» Á¦ ³ª¸§´ë·Î ±¸¼ºÇؼ­ Àû°Ú½À´Ï´Ù.

6.2.1. ciÀÇ ½ÃÁ¡

ci(check in)Àº ÀϹÝÀûÀ¸·Î ÇϳªÀÇ ÀÛ¾÷ ´ÜÀ§·Î ÀÌ·ç¾îÁ®¾ß ÇÑ´Ù. ÀÛ¾÷ ´ÜÀ§ ¶ó´Â °ÍÀÌ ¿Ï¼ºÀÌ µÇ¾î¾ß¸¸ üũÀÎÀ» ÇÏ¿©¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ¸¸¾à ÀÛ¾÷ ´ÜÀ§ º°·Î üũÀÎÀ» ÇÏÁö ¾Ê°í ¹«ÀÛÀ§·Î ÇÏ°Ô µÇ¸é ¹öÀüÀ̶ó´Â Àǹ̰¡ Åð»öÇÏ°Ô µÇ¸ç, Àڽŵµ Çò°¥¸± »Ó ¾Æ´Ï¶ó, À̸¦ üũ¾Æ¿ô Çؼ­ »ç¿ëÇÏ´Â ´Ù¸¥ °øµ¿ »ç¿ëÀÚ(°°ÀÌ ÇÁ·Î±×·¥À» °³¹ßÇÏ´Â »ç¶÷)¿¡°Ô ÇÇÇظ¦ ÁÙ ¼ö ÀÖ´Ù´Â °ÍÀ» ¸í½ÃÇØ¾ß ÇÑ´Ù. ¿©±â¼­ ÀÛ¾÷ ´ÜÀ§¶ó´Â °ÍÀÇ Á¤ÀǸ¦ ³»·Áº¸±â·Î ÇÏÁÒ.
  1. ÇÁ·Î±×·¥¿¡¼­ µå·¯³­ ³í¸®Àû/¹°¸®Àû ¿À·ù(¹ö±×, bug)¸¦ ¼öÁ¤ÇÏ°í Á¤»óÀûÀÎ µ¿ÀÛÀ» È®ÀÎÇÑ °æ¿ì°¡ ÇϳªÀÇ ÀÛ¾÷ ´ÜÀ§ÀÌ´Ù. µû¶ó¼­ üũÀÎ ÇÑ´Ù.
  2. ¾î¶² ¸ðµâÀÇ ÀÎÅÍÆäÀ̽º°¡ º¯°æµÇ¾î À̸¦ »ç¿ëÇÏ´Â ´Ù¸¥ ¸ðµâ¿¡±îÁö ¿µÇâÀ» ¹ÌÄ¥ °æ¿ì¿¡ ¹Ù²î°Ô µÇ´Â ¸ðµç ¸ðµâ, ¾Æ´Ô ÀÌ¿Í °ü·ÃµÈ ÆÄÀÏÀÌ ¸ðµÎ ÇϳªÀÇ ÀÛ¾÷ ´ÜÀ§°¡ µÇ°Ô ÇÑ´Ù. Áï, ÀÎÅÍÆäÀ̽º°¡ ¹Ù²ï ºÎºÐÀ» üũÀÎ ÇÏ·Á¸é ÀÌ¿Í °ü·ÃµÈ ´Ù¸¥ °÷µµ ÀûÀýÇÏ°Ô ¼öÁ¤ÇÑ ´ÙÀ½ üũÀÎ ÇÏ¿©¾ß ÇÑ´Ù. ±×·¡¾ß, ÇÁ·Î±×·¥ÀÇ ÀÏ°ü¼ºÀ» À¯ÁöÇÒ ¼ö ÀÖ´Ù.
  3. »õ·Î¿î ±â´ÉÀ» À§Çؼ­ ¸ðµâ¿¡ ÀÎÅÍÆäÀ̽º¸¦ Ãß°¡ÇÒ °æ¿ì¿¡ ÀÌ ¸ðµâÀÇ ¼±¾ðºÎ¿Í ±¸ÇöºÎ°¡ ÇϳªÀÇ ÀÛ¾÷ ´ÜÀ§°¡ µÈ´Ù. Áï »õ·Î¿î ±â´ÉÀÌ ¿ÏÀüÇÏ°Ô ±¸ÇöµÇ¾úÀ» ¶§ üũÀÎÀ» ÇÑ´Ù.

6.2.2. coÀÇ ½ÃÁ¡

co(check out)Àº üũÀΰú´Â ´Þ¸® ¿øÇÏ´Â ¹öÀüÀ» °¡Á®¿À±â¸¸ ÇÏ¸é µÇ¹Ç·Î ¿øº»¿¡ ÇÇÇظ¦ ÁÖÁö ¾ÊÀ¸¹Ç·Î üũÀο¡ ºñÇؼ­´Â ´ë´ÜÇÑ ÁÖÀÇ´Â ÇÊ¿äÇÏÁö ¾Ê´Ù. ´Ù¸¸ ¾Æ·¡¿Í °°Àº °æ¿ì´Â ÀϾÁö ¾Êµµ·Ï ÇսôÙ.
  1. ÀÛ¾÷ ÁßÀÎ ÆÄÀÏÀ» üũÀÎ ÇÏÁö ¾ÊÀº »óÅ¿¡¼­ ÀÌÀü ¹öÀüÀÇ ³»¿ëÀ» º¸±â À§ÇØ Ã¼Å©¾Æ¿ô ÇÏ´Â °æ¿ì°¡ ÀÖ´Ù. ÀÌ °æ¿ì °íÄ£ ºÎºÐÀÌ ´Ù ³¯¾Æ°¡ ¹ö¸®¹Ç·Î ÁÖÀÇÇÏÀÚ. co¸¦ ÇÒ ¶§´Â Ç×»ó (°æ°í)¸Þ½ÃÁö¿¡ ÁÖÀǸ¦ ±â¿ï¿©¾ß ÇÑ´Ù.
  2. º¯°æµÈ ¸ðµç ÆÄÀÏÀ» üũ¾Æ¿ô ÇÏÁö ¾Ê°í ÀϺθ¸ üũ¾Æ¿ô Çؼ­ ÄÄÆÄÀÏÇÒ °æ¿ì ºñÁ¤»óÀûÀÎ µ¿ÀÛÀ» º¸ÀÌ°Ô µÈ´Ù. ÀÌ·² °æ¿ì ÀÚ½ÅÀº ºÐ¸íÈ÷ ¸Â°Ô ÇÁ·Î±×·¥À» ®´Âµ¥ ÇÁ·Î±×·¥ÀÇ µ¿ÀÛÀÌ ÀÌ»óÇϱ⠶§¹®¿¡ ÄÄÆÄÀÏ·¯¸¦ ÀǽÉÇÏ°Ô µÇ´Â °æ¿ì°¡ ¸¹´Ù. (ÄÄÆÄÀÏ·¯°¡ À߸øÇÒ ÀÌÀ¯°¡ ¾ø´Ù´Â °ÍÀ» Ç×»ó ¸í½ÉÇսôÙ.) ³í¸®ÀûÀÎ ½Ç¼öµµ ¾Æ´Ï°í, ¹°¸®ÀûÀÎ ½Ç¼öµµ ¾Æ´Ï±â ¶§¹®¿¡ ¿¡·¯¸¦ ã±â°¡ ÈûµéÁÒ.
  3. °øµ¿ ÀÛ¾÷ÀÚ°¡ üũÀÎ Çß´Ù°í Çؼ­ ÀÚ½ÅÀÌ ¹«Á¶°Ç üũ¾Æ¿ô Çؼ­´Â ¾ÈµÈ´Ù. ºÐ¸íÈ÷ ÀÚ½ÅÀÇ ÀÛ¾÷ Áøµµ¿¡ ¸ÂÃß¾î üũ¾Æ¿ôÀ» ÇØ¾ß ÇÑ´Ù. °øµ¿ ÀÛ¾÷ÀÚ¿ÍÀÇ ÃæºÐÇÑ ´ëÈ­°¡ ÇÊ¿äÇÒ °ÍÀÌ´Ù. rlog ³ª rcsdiff¸¦ »ç¿ëÇؼ­ ¹öÀüÀÇ Æ¯Â¡À» Á¶»çÇØ º¸´Â °Íµµ ÁÁÀº ¹æ¹ýÀÌ´Ù.

7. ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¿Í RCS

7.1. ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¶õ

Á¦°¡ ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¶ó°í Çß½À´Ï´Ù. ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¶ó´Ï. ÇÁ·ÎÁ§Æ®¶õ ȸ»ç¿¡¼­ ¸¹ÀÌ ¾²´ø ¿ë¾î °°Àºµ¥. ¶ó°í ¹¯´Â ºÐÀÌ °è½Ç °Ì´Ï´Ù. ±×·³ Àú´Â ¸ÕÀú ¿©·¯ºÐÀÌ Áö±Ý±îÁö Â¥ º¸½Å ÇÁ·Î±×·¥ Áß¿¡ °¡Àå ±ä °ÍÀÌ ¾ó¸¶³ª µÇ´À³Ä°í ¹¯°í ½Í³×¿ä.

ÀϹÝÀûÀ¸·Î ¾î¶² ¸ñÀûÀ» ´Þ¼ºÇϱâ À§Çؼ­ ²Ï ¼ö°í¸¦ ±â¿ï¿©¼­ ÇÁ·Î±×·¥À» Â¥¾ß ÇÒ °æ¿ì ¿ì¸° ÀÌ°ÍÀ» ÇÁ·ÎÁ§Æ®¶ó°í ÇÕ´Ï´Ù. Çб³¿¡¼­ ³ª¿Â ÇÁ·Î±×·¥ ¼÷Á¦¸¦ ÇÁ·ÎÁ§Æ®¶ó°í ÇÒ ¼öµµ ÀÖ°Ú±º¿ä. ±×·³ ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®¶ó¸é, ÇÁ·Î±×·¥ÀÇ Å©±â°¡ ¾öû³ª¼­ Àå³­ÀÌ ¾Æ´Ñ °ÍÀ̶ó°í Á¤ÀÇÇÏ¸é µÉ±î¿ä.

º¸Åë GCC °¡ 10¸¸ ¶óÀÎÀÌ ³Ñ¾î¼·´Ï´Ù. ¸ðƼÇÁ ¶óÀ̺귯¸®°¡ ¾à 15¸¸ ¶óÀÎ ÀΰɷΠ¾Ë°í ÀÖ±¸¿ä. ÇÏÁö¸¸ º¸Åë ¼öõ ¶óÀÎ Á¤µµÀÇ ÇÁ·Î±×·¥À̶ó¸é ¾î´À Á¤µµ ´ë±Ô¸ð¶ó°í ¸»ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´ë±Ô¸ð ÇÁ·ÎÁ§Æ®ÀÇ ¸î °¡Áö Ư¡À» °£´ÜÇÏ°Ô ¿­°ÅÇØ º¸°Ú½À´Ï´Ù.
  1. ¿ì¼± ¶óÀÎ ¼ö°¡ ¾öû³ª´Ù.
  2. È¥ÀÚ Â¥±â¿£ ³Ê¹« Èûµé´Ù. µû¶ó¼­, 2¸í ÀÌ»óÀÇ ÆÀÀÇ ´ÜÀ§·Î ÀÛ¼ºµÈ´Ù.
  3. ±â°£ÀÌ ¿À·¡ °É¸°´Ù. ¸çÄ¥? ¸î ÁÖÀÏ? ¸î ´Þ? ¸î ³â? (ÇÁ·Î±×·¥ °³¹ß¿¡¼­ ±â°£Àº °ð 'µ·'À» ÀǹÌÇÕ´Ï´Ù.)

È¥ÀÚ ÇÁ·Î±×·¥ Â¥´Âµ¥ Àͼ÷ÇϽŠºÐµéÀÌ Èûµå½Å Á¡ÀÌ ¹Ù·Î ´Ù¸¥ »ç¶÷°ú °°ÀÌ ÇÁ·Î±×·¥À» Â¥¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. ±×¸®°í ÇÁ·Î±×·¥ °³¹ßÀÇ È¿À²¼º¿¡ µû¶ó¼­ ±â°£¿¡ ¾öû³­ Â÷À̸¦ ÁÙ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ·± Àǹ̿¡¼­ RCS´Â °³¹ß Áֱ⸦ ¾Õ´ç±æ ¼ö ÀÖ´Ù´Â Àǹ̿¡¼­ ²Ï Áß¿äÇÑ °Í °°½À´Ï´Ù.

7.2. RCS µð·ºÅ丮¸¦ °øÀ¯ÇÏÀÚ

°¡·É µÎ»ç¶÷ÀÌ °°ÀÌ ÇÁ·Î±×·¥À» §´Ù°í °¡Á¤ÇսôÙ. ÇÁ·Î±×·¥À» Ä®·Î ¹«¿ì ÀÚ¸£µí Àß¶ó¼­ A°¡ ¾î´À ºÎºÐÀ» Â¥°í, B°¡ ´Ù¸¥ ºÎºÐÀ» Â¥´Â ÀÏÀÇ ºÐ´ãÀÌ ÀÌ·ç¾î Á³½À´Ï´Ù. ´ç¿¬È÷ ±×¸®°í ¼­·Î°¡ ´Ù¸¥ »ç¶÷ÀÌ Â§ ÇÔ¼ö³ª µ¥ÀÌÅ͸¦ ½á¾ß ÇÏ´Â °ÍÀº ´ç¿¬ÇÑ ÀÏÀÌÁö¿ä. ¿©±â¼­ ¹®Á¦°¡ ¹ß»ýÇÕ´Ï´Ù. ¸¸¾à ÇÑ µð·ºÅ丮¿¡¼­ ÆÄÀÏÀ» °øÀ¯ÇÑ´Ù°í °¡Á¤ÇÑ´Ù¸é A°¡ ¹Ù²Û ÆÄÀÏÀ» ¶Ç B°¡ ÇÊ¿ä¿¡ ÀÇÇØ °íÄ¡°í, ¶Ç A°¡ °íÄ¡°í.. ÀÌ·± °úÁ¤À» ¹Ýº¹ÇÏ´Ù º¸¸é ¼­·Î Çò°¥¸®°Ô µÇÁÒ.

À̶§´Â RCS µð·ºÅ丮¸¸ °øÀ¯ÇÏ°Ô µÇ¸é ¸ðµç ¹®Á¦´Â ÇØ°áµË´Ï´Ù. ÇÑ »ç¶÷ÀÇ µð·ºÅ丮¿¡ RCS¸¦ ¸¸µé¾î ³õ°í ´Ù¸¥ »ç¶÷Àº ±×°÷À» ¸µÅ© ½Ãŵ´Ï´Ù. ±×·¯¸é µÎ»ç¶÷Àº ÇϳªÀÇ RCS µð·ºÅ丮¸¦ °øÀ¯ÇÏ°Ô µÇ´Â °ÍÀÌÁÒ. ´ç¿¬È÷ ¾²±â°¡ °¡´ÉÇϵµ·Ï permissionÀ» ¿­¾î¾ß °ÚÁÒ. µÎ »ç¶÷Àº ¹Ì¸® ÇÕÀÇµÈ ´ë·Î ÀÚ½ÅÀÇ ¸ðµâÀ» ÀÛ¼ºÇÑ ´ÙÀ½ ¾î´À Á¤µµ ±â´ÉÀÇ ¼öÇàÀÌ °¡´ÉÇÏ°Ô µÇ¸é RCS µð·ºÅ丮¿¡ ¿Ã¸®°Ô µË´Ï´Ù. ±×¸®°í ´Ù¸¥ »ç¶÷ÀÌ ÇÊ¿ä¿¡ ÀÇÇØ RCS ¿¡ ÀÖ´Â ÆÄÀÏÀ» co¸¦ ½á¼­ Ç®°Ô µÇ±¸¿ä.
    +--------------+
    |    R C S     |
    +--+--------+--+
       |        |
+------+-+    +-+------+
|   A    |    |   B    |
+--------+    +--------+ 

±×¸²À¸·Î ¼³¸íÇϸé À§¿Í °°½À´Ï´Ù. ÀÌ·¸°Ô µÇ¸é ¼­·Î ÆÄÀÏÀ» °øÀ¯ÇÔÀ¸·Î½á »ý±â´Â ¹®Á¦´Â »ç¶óÁö°Ô µÇ°í, ÆÄÀÏÀ» ¸¸µç »ç¶÷¸¸ÀÌ lock À» °É ¼ö°¡ Àֱ⠶§¹®¿¡ RCS µð·ºÅ丮¿¡ ÀÖ´Â ¿øº»Àº ¾ÆÁÖ ¾ÈÀüÇÏ°Ô º¸È£µÇÁÒ. ±×¸®°í Ǫ´Â »ç¶÷µµ ÀÚ½ÅÀÌ ÇÊ¿äÇÑ ¹öÀü¸¸ Ç® ¼ö°¡ ÀÖÀ¸¹Ç·Î ¸Å¹ø ´Ù¸¥ »ç¶÷ÇÑÅ× ÀÌ°ÍÁ» °íÃÄ ´Þ¶ó, ÀÌ°Ç ¿Ö ¾ÈµÇ´À³Ä Çϸ鼭 ¼­·Î ½Î¿ï ÇÊ¿ä°¡ ¾ø°ÚÁÒ. ÀÌ°ÍÀº RCS µð·ºÅ丮¿¡ °¢ ¹öÀüº°·Î Á¦´ë·Î µ¿ÀÛÇÏ´Â ÇÁ·Î±×·¥ÀÌ ¿Ã¶ó¿Í ÀÖ´Ù°í °¡Á¤ÇÒ ¶§ °¡´ÉÇÕ´Ï´Ù. ¶Ç µÎ »ç¶÷ »çÀÌÀÇ °³¹ß ¼Óµµ°¡ ´Þ¶óµµ µÇ°ÚÁÒ. A°¡ ¾ÆÁÖ ½Ç·ÂÀÌ ÁÁ¾Æ¼­ »¡¸® Â¥´õ¶óµµ, B´Â ¿ì¼± ÀÚ½ÅÀÇ ÇÁ·Î±×·¥°ú ±ÃÇÕÀÌ ¸Â´Â AÀÇ ¿¾³¯ ¹öÀüÀ» °®´Ù°¡ ¾²¸é µÇ°Åµç¿ä.

Èì. ¾î¶°¼¼¿ä. ±×·²µíÇÏÁö ¾Ê¾Æ¿ä? ¿©±â¼­ A ¿Í B°¡ µ¿ÀÏ Àι°ÀÌ µÇ¾îµµ µË´Ï´Ù. ¿Ö³ÄÇÏ¸é °°Àº »ç¶÷ÀÌ ¿©·¯ ±ºµ¥¿¡¼­ ÀÏÀ» ÇÒ ¼öµµ ÀÖÀ¸´Ï±î¿ä. À§¿Í °°Àº ·ê¸¸ Á¦´ë·Î ÁöŲ´Ù¸é ÇÁ·Î±×·¥ °³¹ß Áß¿¡ ¼­·Î ¾È ½Î¿ö¼­ ÁÁ°í, ¼­·Î ÀÚ½ÅÀÇ ÇÁ·Î±×·¥À» ½ÃÇèÇØ º¼ ¼ö À־ ÁÁ°í. ¾Æ¹«Æ° ´Ù ÁÁ¾Æ¿ä.

8. ¸¶Ä¡¸é¼­

Á¦°¡ ³ª¸§´ë·Î Á¤ÇØ º» ù ¹ø° °­ÀÇ°¡ ¿©±â¼­ ³¡ÀÌ ³µ±º¿ä. ³Ê¹« ¸¹ÀÌ °¡¸£ÃÄ µå¸®·Á°í ÇÏ´Ù º¸´Ï±î ³»¿ëÀÌ ³­ÇØÇϱ⵵ ÇÏ°í ¹®ÀåÀÌ ¾û¼ºÇÑ ºÎºÐµµ ¸¹À» °ÍÀÔ´Ï´Ù. Á¦ °­ÀÇÀÇ ¸ñÀûÀº ´Ù¾çÇÑ ¸®´ª½º »ç¿ëÀڵ鿡°Ô ¸®´ª½º·Î ¹«¾ùÀ» ÇÒ ¼ö ÀÖ´ÂÁö¿¡ ´ëÇÑ ¹°À½¿¡ ´ëÇÑ ´äÀ̶ó°í ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¸®´ª½º¿¡¼­ ÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¥Àº ¿øÇϽŴٸé Á¦°¡ Ã¥ÀÓÁö°í °­ÀǸ¦ Çص帱¼ö°¡ ÀÖ½À´Ï´Ù. ´ë½Å ³Ê¹« Çϵå¿þ¾îÀûÀÎ ¹®Á¦´Â Á¦ ÄÄÇ»ÅÍ°¡ °í¹°À̶ó¼­(486DX 33Mhz) º¸ÀåÀ» ÇÒ ¼ö°¡ ¾ø½À´Ï´Ù.

¿©±â±îÁö Àоî ÁֽŠºÐµé¿¡°Ô °¨»çµå¸®¸é¼­ ÇÑ°¡Áö ºÎŹ ¸»¾¸ µå¸³´Ï´Ù. Á¦ ÆÇ´Ü ±âÁØ¿¡ ÀÇÇØ °­ÀÇ ¼ÒÀ縦 ÅÃÇÏ´Ù º¸¸é ³Ê¹« ¿©·¯ºÐÀÇ °ü½É°ú µ¿¶³¾î Áú ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. Á¦ µý¿¡´Â ¿©·¯ °¡Áö Èï¹Ì·Î¿î ¼ÒÀ縦 ´Ù·ç°í ½Í½À´Ï´Ù¸¸, ¿©·¯ºÐÀÇ µµ¿òÀÌ ÇÊ¿äÇÕ´Ï´Ù.

¿©·¯ºÐÀÇ ¿äûÀÌ ÀÖÀ¸½Ã´Ù¸é RCS ¸í·É¾îµéÀ» Á¤¸®Çؼ­ °£´ÜÇÏ°Ô ¿ä¾àÇؼ­ ¿Ã¸®°Ú½À´Ï´Ù.



ID
Password
Join
Even the smallest candle burns brighter in the dark.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-02-23 10:46:02
Processing time 0.0116 sec