· 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 ¸í·É¾îµéÀ» Á¤¸®Çؼ­ °£´ÜÇÏ°Ô ¿ä¾àÇؼ­ ¿Ã¸®°Ú½À´Ï´Ù.





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.0123 sec