1Chapter. µµÀÔ
1.1.¹öÀü °ü¸®´Â Á¤º¸¿¡ ´ëÇÑ º¯°æ »çÇ×À» °ü¸®ÇÏ´Â ±â¹ýÀÔ´Ï´Ù. ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÛÀº ¼öÁ¤À» ÇÑ µÚ, ´ÙÀ½ ³¯¿¡ ±× ¼öÁ¤µÈ °ÍÀ» Ãë¼ÒÇÏ´Â ÀÏÀ» ÀÏ»óÀûÀ¸·Î ÇÏ´Â ÇÁ·Î±×·¡¸Ó¿¡°Ô ¹öÀü °ü¸®´Â ¿À·§µ¿¾È ¸Å¿ì Áß¿äÇÑ µµ±¸¿´½À´Ï´Ù. ÀÌ ÇÁ·Î±×·¡¸ÓµéÀÌ ÆÀÀ» ÀÌ·ç¾î µ¿½Ã¿¡ ÀÛ¾÷ÇÑ´Ù°í »ý°¢ÇØ º¸¸é, ÀϾ ¼ö Àִ ȥ¶õÀ» ¸·±â À§ÇØ ÁÁÀº ½Ã½ºÅÛÀÌ ÇÊ¿äÇÏ´Ù´Â »ç½ÇÀ» ¾Ë ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. 1.1. SubversionÀº ¹«¾ùÀΰ¡?SubversionÀº, °ø°³(Free)/Open source ¹öÀü °ü¸® ½Ã½ºÅÛÀ¸·Î, ½Ã°£°ú ÇÔ²² º¯ÈÇÏ´Â ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ °ü¸®ÇÕ´Ï´Ù. ÆÄÀÏÀÇ °èÃþ ±¸Á¶ Àüü´Â, ÀúÀå¼Ò(repository)·Î ºÒ¸®´Â Àå¼Ò¿¡ º¸°üµË´Ï´Ù. ÀúÀå¼Ò´Â ÀϹÝÀûÀÎ ÆÄÀÏ ¼¹ö¿Í ºñ½ÁÇÏÁö¸¸, »ç¿ëÀÚ°¡ ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ º¯°æÇÑ °ÍÀ» ¸ðµÎ ±â·ÏÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ·Î ÀÎÇØ »ç¿ëÀÚ´Â ¿¾ ¹öÀüÀÇ µ¥ÀÌÅÍ·Î µÇµ¹¸®°Å³ª º¯°æµÈ ÀÌ·ÂÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± Àǹ̷Π¹öÀü °ü¸® ½Ã½ºÅÛÀ» "ŸÀÓ ¸Ó½Å"ÀÇ ÀÏÁ¾À̶ó°í »ý°¢ÇÏ´Â »ç¶÷µµ ÀÖ½À´Ï´Ù. ¸î¸î ¹öÀü °ü¸® ½Ã½ºÅÛÀº ¼ÒÇÁÆ®¿þ¾î ±¸¼º °ü¸® ½Ã½ºÅÛ(SCM)À̱⵵ ÇÕ´Ï´Ù. ±×·¯ÇÑ ½Ã½ºÅÛÀº ¼Ò½º ÄÚµåÀÇ Æ®¸®¸¦ °ü¸®Çϱâ À§Çؼ Ưº°È÷ Á¦À۵ǾúÀ¸¸ç, ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ °üÇÑ ¸¹Àº Ư¼ö ±â´ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ Á÷Á¢ ÀÌÇØÇѴٰųª ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µå´Âµ¥ ÇÊ¿äÇÑ µµ±¸µéÀ» Á¦°øÇÕ´Ï´Ù. ±×·¯³ª SubversionÀº ±×·¯ÇÑ Á¾·ùÀÇ ½Ã½ºÅÛÀº ¾Æ´Õ´Ï´Ù. SubversionÀº ¼Ò½º ÄÚµå´Â ¹°·Ð, ¾î¶°ÇÑ Á¾·ùÀÇ ÆÄÀÏÀÇ ÁýÇÕµµ °ü¸®ÇÒ ¼ö ÀÖ´Â ÀϹÝÀûÀÎ ½Ã½ºÅÛÀÔ´Ï´Ù. 1.2. SubversionÀÇ ¿ª»ç1995³â¿¡ Karl Fogel°ú Jim Blandy´Â Cyclic Software »ç¸¦ â¼³Çß½À´Ï´Ù. ÀÌ È¸»ç´Â Concurrent Versions System (CVS)¸¦ »ó¾÷ÀûÀ¸·Î °³·®ÇÏ°í ±â¼úÁö¿øÀ» ÇÏ´Â ±â¾÷À̾ú½À´Ï´Ù. Cyclic »ç´Â (Cygnus Software »çÀÇ µµ¿òÀ» ¹Þ¾Æ) ³×Æ®¿öÅ© »ó¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â ÃÖÃÊÀÇ CVS¸¦ °ø°³Çß½À´Ï´Ù. 1999³â¿¡, Karl FogelÀº, CVS¿Í ÀÌ·Î ÀÎÇØ °¡´ÉÇÏ°Ô µÈ Open Source °³¹ß ¸ðµ¨¿¡ ´ëÇÑ Ã¥À» ÃâÆÇÇß½À´Ï´Ù. Karl°ú JimÀº CVSÀÇ ´ëü ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÏ¿© ¿À·§µ¿¾È À̾߱âÇß½À´Ï´Ù. JimÀº »õ·Î¿î ÀÌ·ÐÀûÀÎ ÀúÀå¼Ò µðÀÚÀο¡ ´ëÇÑ ÃʾÈÀ» ¸¸µé¾ú°í, ÁÁÀº ÇÁ·ÎÁ§Æ® ¸íĪÀ» »ý°¢ÇØ ³Â½À´Ï´Ù. ÃÖÁ¾ÀûÀ¸·Î 2000³âÀÇ 2¿ù, CollabNet »ç (http://www.collab.net)ÀÇ Brian Behlendorf´Â Karl¿¡°Ô CVSÀÇ ´ëü ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÏ´Â µ¥ Àü³äÇØ ´Þ¶ó°í Á¦ÀÇÇß½À´Ï´Ù. KarlÀº ÇÔ²² ÀÏÇÒ ÆÀÀ» ¸¸µé¾î 5¿ùºÎÅÍ ÀÛ¾÷¿¡ µé¾î°¬½À´Ï´Ù. SubversionÀº ¶óÀ̼¾½º ¾øÀÌ °ø°³µÈ ÇüÅ·Π°³¹ßµÇ¾úÀ¸¹Ç·Î, ¾ó¸¶ ÈÄ ¿ÀÇ ¼Ò½º °³¹ßÀÚ Ä¿¹Â´ÏƼÀÇ ÁÖ¸ñÀ» ¹Þ°Ô µÇ¾ú½À´Ï´Ù. ÃÖÃÊÀÇ ¼³°è ÆÀÀº ¸î °³ÀÇ °£´ÜÇÑ ¸ñÇ¥¸¦ Á¤Çß½À´Ï´Ù. SubversionÀº, CVSÀÇ ±â´ÉÀ» ´ëüÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù°í °áÁ¤Çß½À´Ï´Ù. Áï, CVSÀÇ ±â´ÉÀ» ±×´ë·Î º¸Á¸ÇÏ°í °³¹ß ¸ðµ¨À» °è½ÂÇÏ´Â ¹Ý¸é, ºÐ¸íÈ÷ µå·¯³ª´Â °áÁ¡À» º¸¿ÏÇØ¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. CVS »ç¿ëÀÚ°¡ Å« ¹«¸® ¾øÀÌ ÀÌ¿ëÇÒ ¼ö ÀÖµµ·Ï SubversionÀº CVS¿Í ºñ½ÁÇØ¾ß ÇÑ´Ù°í Çß½À´Ï´Ù. 14°³¿ùÀÇ ÄÚµù µÚ SubversionÀº 2001/8/31¿¡ "½º½º·Î ÀÚ½ÅÀÇ ¼Ò½º ÄÚµå °ü¸®"¸¦ ÇÒ ¼ö ÀÖ°Ô µÇ¾ú½À´Ï´Ù. Áï, Subversion °³¹ßÀÚ´Â CVS »ç¿ëÀ» ±×¸¸ µÎ°í, SubversionÀ¸·Î ¼Ò½º ÄÚµå °ü¸®¸¦ ÇÒ ¼ö ÀÖ°Ô µÇ¾ú½À´Ï´Ù. CollabNet »ç°¡ °³¹ß ÀÚü¸¦ ½ÃÀÛÇß°í Ç® ŸÀÓÀ¸·Î ÀÏÇÏ´Â Subversion °³¹ßÀÚ ¸î¸îÀÇ ÀÓ±ÝÀ» ÁöºÒÇÏ´Â µî ´ëºÎºÐÀÇ ÀÛ¾÷¿¡ ÀÚ±ÝÀ» ´ë±ä ÇßÁö¸¸, ÀÌ ÇÁ·ÎÁ§Æ®´Â ½Ç·Â Áß½ÉÁÖÀÇ¿¡ µû¸£´Â ÀüÇüÀûÀÎ Open Source ÇÁ·ÎÁ§Æ®ÀÔ´Ï´Ù. CollabNet »ç°¡ ÄÚµåÀÇ ÀúÀÛ±ÇÀ» °¡Áö°í ÀÖÁö¸¸, Apache/BSD ½ºÅ¸ÀÏÀÇ ¶óÀ̼¾½º¸¦ µû¸£°í ÀÖ°í ÀÌ´Â Debian Free Software °¡À̵å¶óÀÎÀ» ÁؼöÇÕ´Ï´Ù. ¹Ù²Ù¾î ¸»ÇÏ¸é ´©±¸¶óµµ ¿øÇÑ´Ù¸é ÀÚÀ¯·Ó°Ô SubversionÀ» ´Ù¿î·ÎµåÇØ ¼öÁ¤ÇÏ°í Àç¹èÆ÷ÇÒ ¼ö ÀÖÀ¸¸ç, CollabNet »ç³ª ´Ù¸¥ ´©±º°¡ÀÇ Çã°¡¸¦ ¾òÀ» ÇÊ¿ä´Â ¾ø½À´Ï´Ù. 1.3. SubversionÀÇ Æ¯Â¡SubversionÀº CVSÀÇ µðÀÚÀÎÀ» ¾î¶»°Ô °³·®ÇßÀ»±î? ´ç½ÅÀÇ È£±â½ÉÀ» ÀÚ±ØÇÏ´Â ÀÛÀº ÀÌÀ¯µéÀ» ³ª¿Çغ¸°Ú½À´Ï´Ù. CVS¿¡ Àͼ÷ÇÏÁö ¾Ê´Ù¸é ÀÌ ±â´ÉµéÀ» ÀüºÎ ÀÌÇØÇÒ ¼ö ¾øÀ» Áöµµ ¸ð¸£Áö¸¸ ±¦Âú½À´Ï´Ù, >¿¡ Á» ´õ ÆòÀÌÇÑ ¼Ò°³±ÛÀÌ ÀÖ½À´Ï´Ù.
1.4. SubversionÀÇ ÀνºÅçSubversionÀº APR(the Apache Portable Runtime library)·Î ºÒ¸®´Â ÀÎÅÍÆäÀ̽º À§¿¡ °³¹ßµÇ°í ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡ SubversionÀº ApacheÀÇ httpd ¼¹ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â ¿î¿µÃ¼Á¦¶ó¸é ¾îµð¿¡¼µµ ½ÇÇàµÉ ¼ö ÀÖ½À´Ï´Ù: Windows, Linux, ¸ðµç BSDÀÇ º¯Á¾, Mac OX X, Netware µîÀÔ´Ï´Ù. SubversionÀ» ¼Õ¿¡ ³Ö´Â °¡Àå °£´ÜÇÑ ¹æ¹ýÀº ÀÚ½ÅÀÇ ¿î¿µÃ¼Á¦¿ë ¹ÙÀ̳ʸ® ÆÐÅ°Áö¸¦ ´Ù¿î·ÎµåÇÏ´Â °ÍÀÔ´Ï´Ù. Subversion À¥ »çÀÌÆ®(http://subversion.tigris.org)¿¡´Â ÀÚ¿øºÀ»ç¿¡ ÀÇÇØ ¸¸µé¾îÁø ´Ù¿î·Îµå °¡´ÉÇÑ ¹ÙÀ̳ʸ®°¡ ¸¹ÀÌ ÀÖ½À´Ï´Ù. ÀÌ »çÀÌÆ®¿¡´Â º¸Åë Microsoft Windows¸¦ À§ÇÑ ±×·¡ÇÈ ÀνºÅç·¯ ÆÐÅ°Áöµµ ÀÖ½À´Ï´Ù. Unix °è¿ÀÇ ¿î¿µÃ¼Á¦¸¦ »ç¿ëÇÏ°í ÀÖ´Ù¸é (rpm, deb, ports tree µîÀÇ) ½Ã½ºÅÛ °íÀ¯ ÆÐÅ°Áö ¹èÆ÷ ½Ã½ºÅÛÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ȤÀº Á÷Á¢ ¼Ò½º ÄÚµå·ÎºÎÅÍ SubversionÀ» ÄÄÆÄÀÏÇÒ ¼öµµ ÀÖ½À´Ï´Ù. À¥ »çÀÌÆ®¿¡¼ ÃֽŠ¼Ò½º ÄÚµå ¸±¸®Á ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ¾ÐÃàÀ» ÇØÁ¦ÇÑ µÚ INSTALL ÆÄÀÏÀÇ ¼³¸í¿¡ µû¶ó ÄÄÆÄÀÏ ÇϽʽÿÀ. ¼Ò½º ÆÐÅ°Áö¿¡´Â (apr, apr-util, neon ¶óÀ̺귯¸® µîÀÇ) ¿ø°ÝÀÇ ÀúÀå¼Ò¿¡ Á¢±ÙÇϱâ À§ÇÑ Ä¿¸Çµå ¶óÀΠŬ¶óÀ̾ðÆ®¸¦ ¸¸µå´Âµ¥ ÇÊ¿äÇÑ °ÍÀº ¸ðµÎ °®Ãß¾îÁ® ÀÖ½À´Ï´Ù. SubversionÀº Berkeley DB³ª ÀáÀçÀûÀ¸·Î´Â Apache httpd µî ´Ù¸¥ ¿©·¯ °¡Áö ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÁ¸ÇÏ°í ÀÖ´Ù´Â °ÍÀ» ÁÖÀÇÇØ ÁֽʽÿÀ. ¸¸¾à "¿ÏÀüÇÏ°Ô" ºôµåÇÏ·Á°í ÇÑ´Ù¸é INSTALL ÆÄÀÏ¿¡ ¾²¿©Áø ¸ðµç ÆÐÅ°Áö°¡ ¼³Ä¡µÇ¾î ÀÖ´Â °ÍÀ» È®ÀÎÇØ ÁֽʽÿÀ. Subversion ÀÚü¿¡ ´ëÇØ ÀÛ¾÷ÇÒ °èȹÀ̶ó¸é Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥À» »ç¿ëÇØ °¡Àå ÃÖ½ÅÀÇ ¼Ò½º Äڵ带 ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. »ç¿ë ¹æ¹ýÀº >¿¡ ³ª¿Í ÀÖ½À´Ï´Ù. 1.5. SubversionÀÇ ±¸¼º¿ä¼ÒÀνºÅç µÚÀÇ SubversionÀº ÀÛÀº ÇÁ·Î±×·¥µé·Î ÀÌ·ç¾îÁ® ÀÖ½À´Ï´Ù. °£´ÜÇÑ °³¿ä¸¦ ¾Æ·¡¿¡ ¾¹´Ï´Ù. 1.5.1. Ŭ¶óÀ̾ðÆ® ±¸¼º¿ä¼Ò(»ç¿ëÀÚÀü¿ë)
1.5.2. ¼¹ö ±¸¼º¿ä¼Ò(°ü¸®ÀÚÀü¿ë)À̰͵éÀº ¸ðµÎ >¿¡ ³íÀǵ˴ϴÙ.
SubversionÀÌ ¿Ã¹Ù¸£°Ô ÀνºÅç µÇ¾ú´Ù¸é ÀÌÁ¦ SubversionÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ µÎ °³ÀÇ Àå¿¡¼´Â Ä¿¸Çµå ¶óÀΠŬ¶óÀ̾ðÆ® ÇÁ·Î±×·¥ svnÀÇ »ç¿ë¹ýÀ» ¼³¸íÇÕ´Ï´Ù. |
You will be aided greatly by a person whom you thought to be unimportant. |