· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Subversion Book/WebDAVAnd Autoversioning

WebDAV ¿Í ÀÚµ¿ ¹öÀüÈ­

Appendix A. WebDAV ¿Í ÀÚµ¿ ¹öÀüÈ­


A.1.

WebDAV ´Â HTTPÀÇ È®ÀåÀ¸·Î, ÆÄÀÏ °øÀ¯¸¦ À§ÇÑ Ç¥ÁØÀ¸·Î¼­ ÀÚ¸®Àâ¾Æ °¡°í ÀÖ½À´Ï´Ù. ¿À´Ã³¯ÀÇ ¿î¿µÃ¼Á¦µéÀº ±Ø´ÜÀûÀ¸·Î À¥À» ÀǽÄÇÏ°í ÀÖÀ¸¹Ç·Î ¸¹Àº ¿î¿µÃ¼Á¦°¡ WebDAV ¼­¹ö¿¡ ÀÇÇØ °ø°³µÈ "°øÀ¯"¸¦ ¸¶¿îÆ®Çϱâ À§ÇÑ ±â´ÉÀ» ±âº»À¸·Î ³»ÀåÇÏ°í ÀÖ½À´Ï´Ù.

¸¸¾à Apache/mod_dav_svn À» Subversion ³×Æ®¿öÅ© ¼­¹ö·Î ÀÌ¿ëÇÑ´Ù¸é, ¾Æ¸¶ WebDAV ¼­¹öµµ »ç¿ëÇÏ°í ÀÖÀ» °ÍÀÔ´Ï´Ù. ÀÌ ºÎ·Ï¿¡¼­´Â WebDAV ÇÁ·ÎÅäÄÝÀÇ ¼ºÁú¿¡ ´ëÇÑ ¸î°¡Áö ¹è°æÁö½ÄÀ» Á¦°øÇÏ°í SubversionÀÌ ¾î¶»°Ô ±×°ÍÀ» ÀÌ¿ëÇϸç, WebDAV¸¦ Áö¿øÇÏ´Â ´Ù¸¥ ¼ÒÇÁÆ®¿þ¾î¿Í ¾î¶»°Ô Àß ÇùÁ¶ÇÏ´ÂÁö¸¦ ´Ù·ì´Ï´Ù.


A.1. WebDAV ÀÇ ±âº»ÀûÀÎ °³³ä

ÀÌ ¸¶µð´Â WebDAVÀÇ °³³ä¿¡ ´ëÇؼ­ ¾ÆÁÖ °£·«ÇÏ°í ÀϹÝÀûÀÎ °³¿ä¸¦ Á¦°øÇÕ´Ï´Ù.ÀÌ°ÍÀº Ŭ¶óÀ̾ðÆ®¿Í ¼­¹öÀÇ »çÀÌÀÇ WebDAV ÀÇ È£È¯¼º¿¡ °üÇÑ ¹®Á¦¸¦ ÀÌÇØÇϱâ À§ÇÑ ±âÃÊ°¡ µË´Ï´Ù.


A.1.1. WebDAV

RFC 2518 Àº ¸î °¡Áö °³³ä°ú °Å±â¿¡ µ¿¹ÝÇÏ´Â HTTP 1.1 ÀÇ È®Àå ¸Þ¼Òµå¸¦ Á¤ÀÇÇÏ°í ÀÖ½À´Ï´Ù. ±×°ÍÀº À¥À» Á» ´õ º¸ÆíÀûÀÎ ÀÐ°í ¾²±â °¡´ÉÇÑ ¸Åü·Î ¸¸µé¾îÁÖ´Â °ÍÀÔ´Ï´Ù. WebDAV ȣȯ À¥ ¼­¹ö´Â ÀϹÝÀûÀÎ ÆÄÀÏ ¼­¹öó·³ µ¿ÀÛÇÒ ¼ö ÀÖ°í, Ŭ¶óÀ̾ðÆ®´Â WebDAVÀÇ "°øÀ¯"¸¦ NFS³ª SMB °øÀ¯Ã³·³ ¸¶¿îÆ® ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ ±âº»ÀûÀÎ °³³äÀÔ´Ï´Ù.

±×·¯³ª RFC 2518 Àº DAV¶ó´Â ¸» Áß¿¡ "V"°¡ ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í, ¾î¶² Á¾·ùÀÇ ¹öÀü(Version) °ü¸® ¸ðµ¨µµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö´Â ÆÄÀÏÀ̳ª µð·ºÅ丮°¡ ÇϳªÀÇ ¹öÀü¸¸ Á¸ÀçÇÑ´Ù°í °¡Á¤ÇÏ°í, ±×°ÍÀ» °è¼ÓÇؼ­ µ¤¾î¾¹´Ï´Ù. [1]

±âº»ÀûÀÎ WebDAV¿¡¼­ µµÀÔµÈ »õ·Î¿î °³³ä°ú ¸Þ¼Òµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.

»õ·Î¿î ¾²±â ¸Þ¼Òµå

À¥ ÀÚ¿øÀ» ¸¸µé°Å³ª µ¤¾î¾²´Â Ç¥ÁØÀûÀÎ HTTP PUT¸Þ¼Òµå¿¡ ¿Ü¿¡µµ WebDAV ¿¡¼­´Â »õ·Î¿î COPY ¿Í MOVE ¸Þ¼Òµå¸¦ Á¤ÀǵǾ ÀÚ¿øÀ» º¹Á¦Çϰųª À̵¿Çϰųª ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

Ä÷º¼Ç

ÀÌ°ÍÀº ÀÚ¿ø(URI)ÀÇ ±×·ìÀ» °¡¸®Å°´Â WebDAV ¿ë¾îÀÔ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì ±×°ÍÀº "µð·ºÅ丮"¶ó´Â ¸»°ú °°Àº ÀǹÌÀÔ´Ï´Ù. "/" ¹®ÀÚ·Î ³¡³ª´Â °ÍÀº Ä÷º¼ÇÀ̶ó°í ºÎ¸¦ ¼ö ÀÖ½À´Ï´Ù. ÆÄÀÏ ÀÚ¿øÀº PUT ¸Þ¼Òµå·Î °íÃÄ ¾µ ¼ö Àְųª ¸¸µé¾îÁö°Å³ª ÇÕ´Ï´Ù¸¸, ÁýÇÕ ÀÚ¿øÀº »õ·Î¿îMKCOL¸Þ¼Òµå·Î ¸¸µé¾îÁý´Ï´Ù.

¼Ó¼º

ÀÌ°ÍÀº Subversion¿¡ ³ª¿Í¿Í °°Àº ¾ÆÀ̵ð¾îÀÔ´Ï´Ù ÆÄÀÏ°ú ÁýÇÕ¿¡ ºÎ¼ö ÇÑ ¸ÞŸµ¥ÀÌŸÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ®´Â »õ·Ó´Ù PROPFIND ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÚ¿ø¿¡ ºÎ¼ö ÇÑ ¼Ó¼ºÀ» À϶÷Ç¥ °¡¸®Å°°Å³ª ÃßÃâÇϰųª ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í, PROPPATCH ¸Þ¼Òµå¸¦ »ç¿ëÇØ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸î°³ÀÇ ¼Ó¼ºÀº ¿ÏÀüÇÏ°Ô À¯Àú¿¡ ÀÇÇØ ¸¸µé¾îÁö°í Á¦¾îµË´Ï´Ù( ¿¹¸¦ µé¾î,"color"·Î ºÒ¸®´Â ¼Ó¼º), ¶Ç ´Ù¸¥ °ÍÀº ¿ÏÀüÇÏ°Ô WebDAV ¼­¹ö¿¡ ÀÇÇØ ¸¸µé¾îÁö°í Á¦¾îµË´Ï´Ù(¿¹¸¦ µé¾î, ÆÄÀÏ ÀÇ ¸¶Áö¸· ¼öÁ¤ ½Ã°¢À» Æ÷ÇÔÇÑ ¼Ó¼º). ÃÖÃÊÀÇ °ÍÀº"dead" ¼Ó¼ºÀ¸·Î ºÒ·Á ³ª¸ÓÁöÀÇ °ÍÀº"live" ¼Ó¼ºÀ¸·Î ºÒ¸³´Ï´Ù.

¶ô

WebDAV ¼­¹ö´Â Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇÑ ¶ôÀÇ ±â´ÉÀ» ÁØ´Ù ÀÏÀÌ »ý±é´Ï´Ù. ÀÌ ±â´ÉÀº ÀÓÀÇÀÔ´Ï´Ù. ´ëºÎºÐÀÇ WebDAV ¼­¹ö´Â ÀÌ ±â´ÉÀ» Á¦°øÇÏ°í ÀÖ½À´Ï´Ù¸¸. ¸¸¾à Á¸ÀçÇϸé, Ŭ¶óÀ̾ðÆ®´Â »õ·Ó´Ù LOCK ¿Í UNLOCK¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÚ¿ø¿¡ÀÇ ¾×¼¼½º¸¦ Á¶Á¤ ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì, ÀÌ·¯ÇÑ ¸Þ¼Òµå´Â ¹èŸÀûÀÎ ±âÀÔÇØ ¶ôÀ» ¸¸µç´Ù À§ÇØ(¶§¹®¿¡) ÀÌ¿ëµË´Ï´Ù(>·Î ³íÀÇÇß´Ù °°°Ô), °øÀ¯ ±âÀÔ ¶ôµµ °¡´ÉÇÑ °ÍÀº ¾Ê½À´Ï´Ù¸¸.


A.1.2. DeltaV È®Àå

RFC 2518 Àº ¹öÀü°ü¸®¶ó´Â °³³äÀÌ ¾ø±â ¶§¹®¿¡, WebDAV¿¡ ¹öÀü °ü¸® ±â´ÉÀ» Ãß°¡ÇÑ RFC 3253À» ¾²´Â ÀÏÀÌ ´Ù¸¥ ±×·ì¿¡ ¸Ã°ÜÁ³½À´Ï´Ù. WebDAV/DeltaV Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö´Â ÀÚÁÖ "DeltaV" Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö·Î ºÒ¸³´Ï´Ù. DeltaV´Â ±âº»ÀûÀÎ WebDAVÀÇ Á¸À縦 Æ÷ÇÔÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù.

DeltaV ´Â ¿ÏÀüÈ÷ »õ·Î¿î ´Ü¾î¸¦ µµÀÔÇß½À´Ï´Ù¸¸, ³î¶óÁö ¸¶¼¼¿ä. »ý°¢Àº ¸Å¿ì Á÷°üÀûÀÔ´Ï´Ù. DeltaV·Î µµÀÔµÈ »õ·Î¿î °³³ä°ú ¸Þ¼Òµå´Â:

ÀÚ¿ø ¸¶´ÙÀÇ ¹öÀüÈ­

CVS³ª ´Ù¸¥ ¹öÀü °ü¸® ½Ã½ºÅÛ°ú °°ÀÌ DeltaV´Â °¢°¢ÀÇ ÀÚ¿øÀÌ ¹«ÇÑÇÑ °³¼öÀÇ »óŸ¦ °¡Áú ¼ö ÀÖ´Ù°í °¡Á¤ÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ®´Â VERSION-CONTROL¶ó´Â »õ·Î¿î ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÚ¿øÀ» ¹öÀü °ü¸® »óÅ·ΠµÓ´Ï´Ù. ÀÌ°ÍÀº »õ ¹öÀü °ü¸®µÇ´Â ÀÚ¿ø(VCR)À» ¸¸µì´Ï´Ù. VCRÀ» º¯°æÇÒ ¶§, (PUT³ªPROPPATCHµîÀÇ ¸Þ¼Òµå¸¦ ÀÌ¿ëÇؼ­), ÀÚ¿øÀÇ »õ·Î¿î »óÅ°¡ ÀÛ¼ºµË´Ï´Ù. ÀÌ°ÍÀ» ¹öÀü ÀÚ¿ø(VR)À̶ó°í ºÎ¸¨´Ï´Ù. VCR¿Í VRµµ º¸Åë URL¿¡ ÀÇÇØ Á¤ÀǵǴ À¥ ÀÚ¿øÀÔ´Ï´Ù. VR´Â »ç¶÷ÀÌ ¾Ë±â ½¬¿î À̸§µµ °¡Áú ¼ö ÀÖ½À´Ï´Ù.

¼­¹öÃø ÀÛ¾÷º» ¸ðµ¨

¸î¸î DeltaV ¼­¹ö´Â °¡»óÀûÀÎ"ÀÛ¾÷ ½ºÆäÀ̽º"¸¦ ¼­¹ö»ó¿¡ ¸¸µå´Â ´É·ÂÀ» ¼­Æ÷Æ®ÇÏ°í ÀÖ½À´Ï´Ù. °Å±â¼­ ¸ðµç ÀÛ¾÷ÀÌ ½ÇÇàµË´Ï´Ù. Ŭ¶óÀ̾ðÆ®´ÂMKWORKSPACE ¸Þ¼Òµå¸¦ »ç¿ëÇØ »çÀûÀÎ ¿µ¿ªÀ» ¸¸µé¾î, ±×¸®°í ƯÁ¤ÀÇ VCR ¸¦ ÀÛ¾÷ ½ºÆäÀ̽º¿¡"üũ¾Æ¿ô" ÇÏ´Â °ÍÀ¸·Î º¯°æÇÏ°í ½Í´Ù ±×·¸´Ù°í ÇÏ´Â °ÍÀ» ³ªÅ¸³», ±×°ÍµéÀ» ÆíÁýÇØ, ±×¸®°í Çѹø ´õ "üũÀÎ"ÇÕ´Ï´Ù. HTTPÀÇ ¸»¿¡¼­´Â, ¸Þ¼ÒµåÀÇ È帧À¸·Î¼­´Â, CHECKOUT, PUT, CHECKIN µË´Ï´Ù. °¢°¢ÀÇCHECKINÀÇ ´ÙÀ½¿¡, »õ·Î¿î VR °¡ ¸¸µé¾îÁ® ÆíÁýµÈ VCR ÀÇ ³»¿ëÀº ÃÖ½ÅÀÇ VR¸¦"Áö½ÃÇÏ´Â °Í" °°°Ô µË´Ï´Ù. °¢°¢ÀÇ VCR ´Â ¶Ç"ÀÌ·Â"ÀÚ¿øÀ» °¡Á®, ´Ù¾çÇÑ VR»óŸ¦ ±â·ÏÇØ, ¹®ÀǸ¦ ÇÕ´Ï´Ù.

Ŭ¶óÀ̾ðÆ®Ãø ÀÛ¾÷ Ä«ÇÇ ¸ðµ¨

¸î°³ÀÇ DeltaV ¼­¹ö´Â, Ŭ¶óÀ̾ðÆ®´Â ƯÁ¤ÀÇ VR¿¡ ÀÇÇÑ ÇÁ¶óÀ̺ø ÀÛ¾÷ Ä«ÇǸ¦ °¡Áú ¼ö°¡ ÀÖ´Ù°í ÇÏ´Â »ý°¢À» ¼­Æ÷Æ®ÇÕ´Ï´Ù. ÀÌ°ÍÀº CVS¿Í Subversion°¡ µ¿ÀÛÇÏ´Â ¹æ½ÄÀÔ´Ï´Ù) Ŭ¶óÀ̾ðÆ®°¡ ¼­¹ö¿¡ º°·Î ¼öÁ¤À» À§Å¹ÇÏ°í ½ÍÀº °æ¿ì, ±×°ÍÀº óÀ½¿¡ ÀϽÃÀûÀÎ ¼­¹ö È£¶ûÀÌ ÀÚÅ©¼ÇÀ»MKACTIVITY ¸Þ¼Òµå¿¡ ÀÇÇØ ¸¸µì´Ï´Ù (¾×Ƽ¹öƼ·Î ºÒ¸³´Ï´Ù). ±×¸®°í Ŭ¶óÀ̾ðÆ®´Â º¯°æÇÏ°í ½ÍÀ¸¸é »ý°¢ÇÏ´Â VR °¢°¢ÀÇ À§¿¡¼­CHECKOUT ¸¦ ½ÇÇàÇØ, ±×°ÍÀº ¸î°³ÀÇ ÀϽÃÀûÀÎ"ÀÛ¾÷ ÀÚ¿ø"À» ¾×Ƽ¹öƼ¾È¿¡ ¸¸µì´Ï´Ù. ±×¸®°í ±×°ÍÀºPUT ¿Í PROPPATCH¸Þ¼Òµå¸¦ »ç¿ëÇØ ¼öÁ¤ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, Ŭ¶óÀ̾ðÆ®´Â ÀÛ¾÷ ÀÚ¿ø °¢°¢ÀÇ À§¿¡¼­ CHECKIN ¸¦ ½ÇÇàÇØ, ±×°ÍÀº °¢°¢ÀÇ VCR ³»ºÎ¿¡ »õ·Î¿î VR¸¦ ¸¸µé¾î, ±×¸®°í ¾×Ƽ¹öƼ Àüü°¡ »èÁ¦µË´Ï´Ù.

¼³Á¤

DeltaV ´Â"¼³Á¤"À¸·Î ºÒ¸®´Â VCRÀÇ À¯¿¬ÇÑ ¸ðÀÓÀ» Á¤ÀÇ ÇÕ´Ï´Ù¸¸, ±×°ÍÀº ƯÁ¤ÀÇ µð·ºÅ丮¿¡ ÀÀ´äÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. VCRÀÇ ³»¿ëÀÇ °¢°¢ÀºUPDATE ¸Þ¼Òµå¸¦ »ç¿ëÇØ Æ¯Á¤ÀÇ VR¸¦ Áö½ÃÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. Çѹø ¼³Á¤ÀÌ ¿ÏÀüÇÏ°Ô µÇ¸é, Ŭ¶óÀ̾ðÆ®´Â ¼³Á¤ ÀüüÀÇ"snapshot" ¸¦ ¸¸µé ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº"baseline"·Î ºÒ¸³´Ï´Ù. Ŭ¶óÀ̾ðÆ®´ÂCHECKOUT ¿Í CHECKIN ¸Þ¼Òµå¸¦ »ç¿ëÇØ ¼³Á¤ÀÇ Æ¯Á¤ »óŸ¦ Àâ½À´Ï´Ù. Á¤È®È÷, ±×·¯ÇÑ ¸Þ¼Òµå¸¦ VCRÀÇ Æ¯Á¤ÀÇ VR »óŸ¦ ¸¸µé±â À§Çؼ­(¶§¹®¿¡) »ç¿ëÇϴµ¥ ´à¾Ò½À´Ï´Ù.

È®À强

DeltaV ´Â »õ·Î¿î ¸Þ¼ÒµåREPORT¸¦ Á¤ÀÇÇÕ´Ï´Ù¸¸ ±×°ÍÀº Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö°¡ µ¶ÀÚ µ¥ÀÌÅÍ ±³È¯À» ½ÇÇàÇÏ´Â °ÍÀ» Çã¶ôÇÑ´Ù ¹°°ÇÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ®´ÂREPORT ¿ä±¸¸¦ µ¶ÀÚÀûÀÎ µ¥ÀÌÅÍ°¡ ÀÖ´Â ¼Ó¼º ¶óº§ÀÌ ºÙÀº XMLÀÇ º¸µð¸¦ À̶ó°íµµ µÇ¾î ¼Û½ÅÇÕ´Ï´Ù. ¼­¹ö°¡ ÀÌ Æ¯Á¤ÀÇ ¸®Æ÷Æ®ÇüÀ» ÀÌÇØÇÒ ¼ö ÀÖ´Â °ÍÀ» °¡Á¤ÇØ, ±×°ÍÀº ¿ª½Ã µ¶ÀÚÀûÀÎ XML º¸µð¸¦ ÀÀ´äÇÕ´Ï´Ù. ÀÌ ±â¼úÀº XML-RPC¿Í Àß ´à¾Ò½À´Ï´Ù.

ÀÚµ¿ ¹öÀüÈ­

´ëºÎºÐÀÇ »ç¶÷¿¡°Ô ÀÖ¾î, ÀÌ°ÍÀº DeltaVÀÇ"°¡Àå ¸Å·ÂÀûÀÎ" ±â´É ÀÔ´Ï´Ù. ¸¸¾à DeltaV ¼­¹öÀΰ¡ ÀÌ ±â´ÉÀ» ¼­Æ÷Æ®ÇÏ°í ÀÖÀ¸¸é, ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®(Áï ¹öÀüÈ­¸¦ ÀǽÄÇÏÁö ¾Ê´Â Ŭ¶óÀ̾ðÆ®)´Â ¶ÇÇÑ ¼­¹ö¿¡ ±âÀÔÇÒ ¼ö°¡ ÀÖ¾î ±× ¼­¹ö´Â ¾î·µç ÀÔ´Ù¹°¾î ¹öÀüÈ­ 󸮸¦ ½ÇÇàÇÕ´Ï´Ù. Á¦ÀÏ °£´ÜÇÑ ¿¹¿¡¼­´Â, ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®·ÎºÎÅÍÀÇ ¹«ÁöÇÑPUT ´Â ¼­¹ö¿¡ ÀÇÇØ CHECKOUT, PUT, CHECKINÀÇ Æí¼ºÀ̶ó°í Çؼ®µË´Ï´Ù.


A.2. Subversion ¿Í DeltaV

±×·³, Subversion´Â ´Ù¸¥ DeltaV ¼ÒÇÁÆ®¿þ¾î¿Í ¾î¶°ÇÑ "ȣȯ¼º" ÀÌ ÀÖ´Â °ÍÀϱî¿ä? °£´ÜÇÏ°Ô ¸»Çϸé(ÀÚ): ±×¸¸Å­. Àû¾îµµ, ¾ÆÁ÷ ±×·¸°Ô ȣȯ¼ºÀº ¾Ê°í, Subversion 1.0 ¿¡¼­µµ ±×·¸°ÚÁö¿ä.

libsvn_ra_dav ´Â DeltaV ¿ä±¸¸¦ ¼­¹ö¿¡ ¼Û½ÅÇÕ´Ï´Ù¸¸, Subversion Ŭ¶óÀ̾ðÆ®´Â ÀϹÝÀûÀÎ DeltaV Ŭ¶óÀ̾ðÆ®°¡ ¾Æ´Õ´Ï´Ù. ½ÇÁ¦, ±×°ÍÀº ¼­¹ö¿¡ ¸î°³ÀÇ µ¶ÀÚÀûÀÎ ±â´ÉÀ» ±â´ëÇÏ°í ÀÖ½À´Ï´Ù(ƯÈ÷, REPORT¿ä±¸¿Í °°Àº °ÍÀ» ÅëÇؼ­). ÇÑÃþ ´õ mod_dav_svn ´Â ÀϹÝÀûÀÎ ¸ñÀûÀÇ DeltaV ¼­¹ö°¡ ¾Æ´Õ´Ï´Ù. ±×°ÍÀº ´ÜÁö DeltaV Á¤ÀÇÀÇ ÇÑÁ¤µÈ ÀϺθ¦ ½ÇÀåÇÏ°í Àִ¿¡ Áö³ªÁö ¾Ê½À´Ï´Ù. Á» ´õ ÀϹÝÀûÀÎ WebDAV³ª DeltaV Ŭ¶óÀ̾ðÆ®´Â ±×°Í°ú ¸Å¿ì Àß ÇùÁ¶ µ¿ÀÛÇÒ ¼ö°¡ ÀÖÀ»Áöµµ ¸ð¸£Áö ¾Ê½À´Ï´Ù¸¸, ±×°ÍÀº ±× Ŭ¶óÀ̾ðÆ® ÇÏÁö¸¸ ¼­¹ö°¡ ½ÇÀåÇÏ°í ÀÖ´Â ÇÑÁ¤µÈ ±â´É°ú ÀÏÄ¡ÇÏ°í ÀÖ´Â °Í °°Àº Á¶ÀÛ (À»)¸¦ ÇÒ ¶§ »ÓÀÔ´Ï´Ù. Subversion °³¹ß ÆÀÀº SubversionÀÇ ÇâÈÄÀÇ ¸±¸®½º ±×¸®°í ÀϹÝÀûÀÎ WebDAV¿ÍÀÇ »óÈ£ ¿î¿ëÀ» ÃëÇÒ °èȹÀÌ ÀÖ½À´Ï´Ù.


A.2.1. Subversion ÀÇ DeltaV¿¡ÀÇ ¸ÅÇÎ

´Ù¾çÇÑ Subversion Ŭ¶óÀ̾ðÆ®ÀÇ Á¶ÀÛÀÌ DeltaV¸¦ »ç¿ëÇÏ´Â ¹æ¹ý ÀÇ ¸Å¿ì"ÇÏÀÌ·¹º§ÀÇ" ¹æ½ÄÀ» µé¾î µÓ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì, ÀÌ·¯ÇÑ ¼³¸íÀº ´Ü¼øÈ­ ³Ê¹« ÇÏ°í ÀÖ½À´Ï´Ù. SubversionÀÇ ¿ø½Ã Äڵ带 Àаųª °³¹ßÀÚ¿¡°Ô (µè)¹¯°Å³ª ÇÏ´Â °ÍÀÇ ´ë½Å¿¡ µÈ´Ù°í´Â»ý°¢ÇÏÁö ¸»¾ÆÁÖ¼¼¿ä.

svn checkout/list

Á÷Á¢ÀûÀÎ ¾ÆÀÌÀÇ À϶÷À» ÃëµæÇϱâ À§Çؼ­, ÁýÇÕ ÈÄ¿¡ ±íÀÌ 1 ÀÇ PROPFIND ¸¦ ½ÇÇàÇÕ´Ï´Ù. °¢°¢ÀÇ ¾ÆÀÌ¿¡°Ô,GET (ȤÀº PROPFIND)¸¦ ½ÇÇàÇÕ´Ï´Ù. ÁýÇÕ Áß(¾È)¿¡¼­ Àç±Í ÇØ, ÀÌ°ÍÀ» ¹Ýº¹ÇÕ´Ï´Ù.

svn commit

MKACTIVITY·Î ¾×Ƽ¹öƼ¸¦ ¸¸µé¾î, º¯°æµÇ¾ú´Ù ¾ÆÀÌÅÛ ¸¶´ÙCHECKOUT ¸¦ ½ÇÇàÇØ, »õ·Î¿î µ¥ÀÌÅÍ (À»)¸¦PUT ÇØ, ¸¶Áö¸·¿¡MERGE ¿ä±¸¸¦ ÇØ, ±×°ÍÀÌ ¾Ï¹¬¿¡ È£ÃâÇÏ´ÂCHECKIN °¡ ¸ðµç ÀÛ¾÷ ÀÚ¿ø¿¡ ´ëÇؼ­ ½ÇÇàµË´Ï´Ù.

svn update/switch/status/merge/diff

ÀÛ¾÷ Ä«ÇÇÀÇ È¥ÇÕ ¹öÀü(È¥ÇÕ URL) »óŸ¦ ³ªÅ¸³»´Â µ¶ÀÚÀûÀÎ REPORT ¿ä±¸¸¦ º¸³À´Ï´Ù. ¼­¹ö´Â ¾î´À ¾ÆÀÌÅÛ¿¡ °»½ÅÀÌ ÇÊ¿äÇÑ°¡¸¦ ³ªÅ¸³»´Â µ¶ÀÚÀûÀÎ ÀÀ´äÀ» º¸³À´Ï´Ù. Ŭ¶óÀ̾ðÆ®´Â ÀÀ´ä ¸¶´Ù ·çÇÁ ÇØ, ÇÊ¿äÇÑ GET ¿Í PROPFIND¿ä±¸¸¦ ½ÇÇàÇÕ´Ï´Ù. update ¿Í switch Ä¿¸àµå¿¡¼­´Â, ÀÛ¾÷ Ä«ÇÇ¿¡ »õ·Ó´Ù µ¥ÀÌÅ͸¦ ¹èÄ¡ÇÕ´Ï´Ù. diff ¿Í merge Ä¿¸àµå¿¡¼­´Â µ¥ÀÌÅ͸¦ ÀÛ¾÷ Ä«ÇÇ (¿Í)°ú ºñ±³ÇØ, ·ÎÄÃÀÎ ¼öÁ¤¿¡ ´ëÇÑ º¯°æÀ» Àû¿ëÇÏ´Â Àϵµ ÀÖ½À´Ï´Ù.


A.2.2. ÀÚµ¿ ¹öÀüÈ­ÀÇ ¼­Æ÷Æ®

ÁýÇÊ ½ÃÁ¡¿¡¼­, ÀÌ ¼¼»ó¿¡°Ô´Â ¾ÆÁ÷ ¸Å¿ì ¸î ¾È µÇ´Â Á¾·ùÀÇ DeltaV Ŭ¶óÀ̾ðÆ® ¹Û¿¡ ¾ø´Ù°í ÇÏ´Â °ÍÀÌ Çö½ÇÀÔ´Ï´Ù. RFC 3253 Àº ¾ÆÁ÷ ºñ±³Àû »õ·Î¿î ±Ô°ÝÀÔ´Ï´Ù. ±×·¯³ª, À¯Àú´Â"¹ü¿ëÀûÀÎ"Ŭ¶óÀ̾ðÆ®¿¡ ¾×¼¼½º ÇÑ´Ù (ÀÌ)°¡ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×°ÍÀº, °ÅÀÇ ¸ðµç Çö´ëÀûÀÎ ¿ÀÆÛ·¹ÀÌÆÃ(operating) ½Ã½ºÅÛÀº, ÅëÇÕµÈ ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®¸¦ ½ÇÀåÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù. ÀÌ°ÍÀ» ¸¶À½¿¡ ¼¼¿ö, Subversion °³¹ßÀÚ´Â ¸¸¾à Subversion1. 0ÀÌ ¾î¶°ÇÑ Á¦ÈÞ ±â´ÉÀ» °¡Áö°Ô µÈ´Ù°í Çصµ, DeltaVÀÇ ÀÚµ¿ ¹öÀüÈ­ÀÇ ±¸Á¶¸¦ ¼­Æ÷Æ®ÇÏ´Â °ÍÀÌ °¡Àå ÁÁÀº ¼±Åà (ÀÌ)¶ó°í »ý°¢ÇÏ°í ÀÖ½À´Ï´Ù.

mod_dav_svn ÀÇ ÀÚµ¿ ¹öÀüÈ­ÀÇ ±¸Á¶¸¦ À¯È¿ÇÏ°Ô ÇÏ·Á¸é , httpd.conf ÆÄÀÏÀÇ Locationºí·ÏÀ¸·Î, SVNAutoversioning ¸í·ÉÀ» »ç¿ëÇØ ÁÖ¼¼¿ä. ÀÌ·± ´À³¦ÀÔ´Ï´Ù:

Location /repos
  DAV svn
  SVNPath /absolute/path/to/repository
  SVNAutoversioning on
/Location

º¸Åë, WebDAV Ŭ¶óÀ̾ðÆ®°¡ ÀúÀå¼Ò(repository)ÀÇ Àå¼Ò¿¡ ÀÖ´Â Æнº¿¡ PUT ¸¦ ¹ßÇàÇϸé(ÀÚ), mod_dav_svn´Â ±× ¿ä±¸¸¦ ¹«Á¶°Ç °ÅºÎÇÕ´Ï´Ù. (±×°ÍÀº º¸ÅëÀº, DeltaV"¾×Ƽ¹öƼ"¿¡ ÀÖ´Ù "ÀÛ¾÷ ÀÚ¿ø"»ó¿¡ ±×·¯ÇÑ Á¶ÀÛÀ» Çã¶ôÇÒ »ÓÀÔ´Ï´Ù). ±×·¯³ªSVNAutoversioning ¸¦ À¯È¿ÇÏ°Ô Çϸé(ÀÚ), ±× ¼­¹ö´ÂPUT ¿ä±¸¸¦ Ⱦ·ÉÇØ, ³»ºÎÀûÀ¸·Î´Â MKACTIVITY, CHECKOUT, PUT, CHECKINÀÇ ÀÏ·ÃÀÇ ¸í·ÉÀ¸·Î¼­ ó¸®ÇÕ´Ï´Ù. ÀϹÝÀûÀÎ ·Î±× ¸Þ¼¼Áö°¡ ÀÚµ¿ÀûÀ¸·Î »ý¼ºµÇ¾î »õ·Î¿î ÆÄÀÏ ½Ã½ºÅÛ ¸®¹öÀüÀÌ ¸¸µé¾îÁý´Ï´Ù.

¸Å¿ì ¸¹Àº operating system°¡ ¹ú½á ÅëÇյǾú´Ù WebDAV ´É·ÂÀ» °¡Áö°í ÀÖÀ¸¹Ç·Î, ÀÌ ±â´ÉÀÇ ÀÌ¿ë ÇüÅ´ ¸Å¿ì ÈǸ¢ÇÏ´Ù ¹°°ÇÀÌ µË´Ï´Ù: Microsoft Windows ³ª Mac OS ¸¦ ½ÇÇàÇÏ°í ÀÖ´Â º¸Åë À¯Àú°¡ ÀÖ´Â ¿ÀÇǽº¸¦ »ó»óÇØ º¸¼¼¿ä. °¢°¢ÀÇ ÄÄÇ»ÅÍ (Àº)´Â SubversionÀÇ ÀúÀå¼Ò(repository)¸¦"¸¶¿îÆ®" ÇÏ°í ÀÖ¾î, ±×°ÍÀº º¸Åë ³×Æ®¿öÅ© °øÀ¯·Î º¸ÀÔ´Ï´Ù. ±×µéÀº Æò»ó½Ã ÇÏ°í ÀÖµµ·Ï(µíÀÌ) ¼­¹ö¸¦ »ç¿ëÇÏ°ÚÁö¿ä: ¼­¹öÀÇ ÆÄÀÏÀ» ¿­¾î, ÆíÁýÇØ, ¼­¹ö ½á µÇµ¹¸³´Ï´Ù. ±×·¯³ª, ÀÌ À̾߱â Áß(¾È)¿¡¼­´Â, ¼­¹ö´Â ¸ðµç °ÍÀ» ÀÚµ¿ÀûÀ¸·Î ¹öÀüÈ­ÇÕ´Ï´Ù. ³ªÁß¿¡, ½Ã½ºÅÛ °ü¸® Ã¥ÀÓÀÚ°¡ Subversion Ŭ¶óÀ̾ðÆ® (À»)¸¦ »ç¿ëÇØ, ¸ðµç ³°Àº ¹öÀüÀ» °Ë»öÇØ, ÃßÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

ÀÌ À̾߱â´Â, Çö½Ç·Î ÇÒ ¼ö ÀÖ´Â °ÍÀϱî¿ä? ¾Æ´Ï, ¾ÆÁ÷ ¿ÏÀüÇÏ°Ô´Â. Á¦ÀÏÀÇ ÀåÇØ´Â Subversion1. 0 Àº WebDAVÀÇLOCK (ÀÌ)³ªUNLOCK ¸Þ¼Òµå¸¦ ¼­Æ÷Æ®ÇÏ°í ÀÖÁö ¾Ê´Ù°í ÇÑ´Ù ÀÏÀÔ´Ï´Ù. ´ëºÎºÐÀÇ operating systemÀÇ DAV Ŭ¶óÀ̾ðÆ®´Â DAVÀÇ ÇüÅ·Π¸¶¿îÆ®µÈ ³×Æ®¿öÅ© °øÀ¯·ÎºÎÅÍ Á÷Á¢ ¿­¸° ÀÚ¿ø¿¡ ´ëÇØLOCK ÇÏ·Á°í ÇÕ´Ï´Ù. ÇöÀç, À¯Àú´Â DAV °øÀ¯·ÎºÎÅÍ ÆÄÀÏÀ» ·ÎÄà µð½ºÅ©¿¡ Ä«ÇÇÇØ, ÆíÁýÇØ, ±×¸®°í Çѹø ´õ, ¼­¹ö¿¡ ½á µÇµ¹¸®Áö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ÀÌ»óÀûÀÎ ÀÚµ¿ ¹öÀüÈ­´Â ÇÒ ¼ö ¾ø½À´Ï´Ù¸¸, ±×·±µ¥µµ, ÀÛ¾÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.


A.2.3. mod_dav_lock¿¡ ÀÇÇÑ ´ë¾È

mod_dav Apache ¸ðµâÀº º¹ÀâÇÑ ¸ðµâÀÔ´Ï´Ù: ±×°ÍÀº ¸ðµç WebDAV¿Í DeltaV ¸Þ¼Òµå¸¦ ÀÌÇØÇØ Çؼ®ÇÏ´Â °ÍÀÌ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª, ¾ÆÁ÷ ÀÚ¿ø Àڽſ¡°Ô ¾×¼¼½º ÇÏ·Á¸é ¿¬±¸ ÃÖÁ¾ ´Ü°èÀÇ "°ø±Þ ¸ðµâ" ¿¡ ÀÇÁ¸ÇÏ°í ÀÖ½À´Ï´Ù.

Á¦ÀÏ °£´ÜÇÑ °æ¿ì·Î¼­´Â, À¯Àú´Â mod_dav_fs ¸¦ mod_davÀÇ °ø±Þ ¸ðµâ·Î¼­ ÀÌ¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. mod_dav_fs ´Â Åë»óÀÇ ÆÄÀÏ ½Ã½ºÅÛÀ» ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ °Ý³³ÇÏ´Â Àå¼Ò¿¡ ÀÌ¿ë ÇØ, ±âº»ÀûÀÎ WebDAV ¸Þ¼Òµå¸¸À» ÀÌÇØÇÕ´Ï´Ù. DeltaV´Â ÀÌÇØ ¼º°ú ¼±.

ÇÑÆí Subversion´Â mod_dav_svn ¸¦ mod_dav ÀÇ °ø±Þ ¸ðµâ·Î¼­ »ç¿ëÇÕ´Ï´Ù. mod_dav_svn´ÂLOCK¸¦ µé¿©´Ù º¸¾Ò´Ù ¸ðµç WebDAV ¸Þ¼Òµå¸¦ ÀÌÇØÇØ, DeltaV ¸Þ¼ÒµåÀÇ »ó´çÇÑ ºÎºÐÀ» ÀÌÇØ ÇÕ´Ï´Ù. ±×°ÍÀº ÁøÂ¥ ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀÖ´Ù°í ÇÏ´Â °Íº¸´Ùµµ, Subversion ÀúÀå¼Ò(repository)¿¡ ÀÖ´Â µ¥ÀÌÅÍ¿¡ ¾×¼¼½º ÇÕ´Ï´Ù. Subversion 1.0 Àº ¶ôÀ» ¼­Æ÷Æ®ÇÕ´Ï´Ù¸¸, ±×°ÍÀº Subversion°¡ Ä«ÇÇ¡¤¼öÁ¤¡¤¸ÓÁö ¸ðµ¨À» »ç¿ëÇÏ°í ÀÖ´Â °ÍÀ¸·Î, ½ÇÁ¦·Î ½ÇÀåÇÏ´Â °ÍÀÌ ¸Å¿ì ¾î·Æ±â ¶§¹®ÀÔ´Ï´Ù. [2]

Apache httpd-2. 0 À¸·Î, mod_dav ´Â, °ø±Þ ¸ðµâÀº ±×°ÍÀ» ¹Þ¾ÆµéÀδ٠¶æÀÌ ÀÖ´Ù°í ÇÏ´Â ÀüÁ¦ ¾ÕÀ¸·Î, »çÀûÀÎ µ¥ÀÌŸº£À̽º¿¡ °ÉÄ¡´Â ¶ôÀ» ±â·ÏÇÏ´Â °Í¿¡ ÀÇÇØLOCK ¸Þ¼Òµå¸¦ ¼­Æ÷Æ®ÇÕ´Ï´Ù. ±×·¯³ª Apache httpd-2. 1 ÀÌÈÄ¿¡¼­´Â ÀÌ ¶ôÀÇ ¼­Æ÷Æ®´Â µ¶¸³ÇÑ ¸ðµâ mod_dav_lock ¿¡ ºÐÇÒ µË´Ï´Ù. ÀÌ ¸ðµâÀº ¾î¶°ÇÑ mod_dav °ø±Þ ¸ðµâ¿¡µµ ¶ô µ¥ÀÌŸº£À̽ºÀÇ ÀÌ¿ëÀ» ÀÎÁ¤ÇØ °Å±â¿¡´Â mod_dav_svn µµ Æ÷ÇԵ˴ϴÙ. mod_dav_svn´Â ½ÇÁ¦·Î´Â ¶ôÀ» ÀÌÇØÇÏÁö ¾ÊÀ½¿¡µµ ºÒ±¸ÇÏ°í, ÀÔ´Ï´Ù.

¾ÆÁ÷ È¥¶õÇմϱî?

¿äÄÁµ¥, Apache httpd-2. 1(·Î ±× ÀÌÈÄ)¿¡¼­´Â, mod_dav_lock¸¦ »ç¿ëÇØ, mod_dav_svn °¡ Á¦´ë·ÎLOCK ¿ä±¸¸¦ ³»°í ÀÖ´Ù°í ÇÏ´Âü À» ÇÏ´Â °ÍÀÌ ÇÒ ¼ö ÀÖ½À´Ï´Ù. mod_dav_lock °¡ httpd ¿¡ Â¥³Ö¾î ÄÄÆÄÀÏ µÇ°í ÀÖÀ»±î httpd.conf·Î ·Îµå µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇØ ÁÖ¼¼¿ä. ±×¸®°íLocation ¿¡ DAVGenericLockDB ¸í·ÉÀ» Ãß°¡ÇØ ÁÖ¼¼¿ä. ÀÌÇÏ¿Í °°Àº ´À³¦ÀÔ´Ï´Ù:

Location /repos
  DAV svn
  SVNPath /absolute/path/to/repository
  SVNAutoversioning on
  DavGenericLockDB /path/to/store/locks
/Location

ÀÌ Å×Å©´ÐÀº, Á¶±Ý À§ÇèÇÕ´Ï´Ù: ¾î´À ÀǹÌ, mod_dav_svn ´Â WebDAV Ŭ¶óÀ̾ðÆ®¿¡ °ÅÁþ¸»À» ÇÏ°í ÀÖ´Â °ÍÀÔ´Ï´Ù. LOCK ¿ä±¸¸¦ ¹Þ°í ³Ö´Â ü¸¦ ÇÕ´Ï´Ù¸¸, ½ÇÁ¦·Î´Â ¾î¶² ·¹º§¿¡ ´ëÇصµ ¶ôÀº °­Á¦´çÇÏ°í ÀÖÁö ¾Ê½À´Ï´Ù. ¸¸¾à Á¦2ÀÇ WebDAV Ŭ¶óÀ̾ðÆ®°¡ °°Àº ÀÚ¿ø ¿¡ ´ëÇؼ­LOCK ÇÏ·Á°í Çϸé(ÀÚ), mod_dav_lock´Â ±×°ÍÀ» ¾Ë¾Æ, ¿ä±¸¸¦ ÀûÀýÈ÷ °ÅºÎÇÕ´Ï´Ù. ±×·¯³ª, º¸Åë Subversion Ŭ¶óÀ̾ðÆ®°¡ º¸Åësvn commit¸¦ ÅëÇؼ­ ÇÏ´Â ÆÄÀÏ º¯°æÀº, ÀüÇô ¸·À» ¼ö ¾ø½À´Ï´Ù!. ¸¸¾à ÀÌ Å×Å©´ÐÀ» »ç¿ëÇÑ´Ù¸é, À¯Àú¿¡°Ô, ´Ù¸¥ »ç¶÷ÀÇ º¯°æÀ» ¾î¸²Àâ¾Æ ¸ÁÄ¥ ±âȸ¸¦ ÁÖ¾î ¹ö¸³´Ï´Ù. ƯÈ÷, WebDAV Ŭ¶óÀ̾ðÆ®´Â Åë»óÀÇ svn Ŭ¶óÀ̾ðÆ®¿¡ ÀÇÇØ À§Å¹µÇ¾ú´Ù ¼öÁ¤À» Ʋ·Á µ¡¾²±âÇØ ¹ö¸±Áöµµ ¸ð¸¨´Ï´Ù.

ÇÑÆí, ÃæºÐÈ÷ ÁÖÀÇÇØ È¯°æÀ» ¼³Á¤Çϸé, À§ÇèÀ» ÁÙÀÏ ¼ö°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¸¸¾à À¯ÀúÀǸðµç °Í ÀÌ(svn Ŭ¶óÀ̾ðÆ® (Àº)´Â ¾Æ´Ï°Ô) ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®¸¦ ÅëÇؼ­ ÀÛ¾÷ÇÏ°í ÀÖ´Ù¸é, À̾߱â´Â ÀߵǰÚÁö¿ä.


A.3. ÀÚµ¿ ¹öÀüÈ­ÀÇ »óÈ£ ÇùÁ¶¼º

ÀÌ ¸¶µð¿¡¼­´Â, °¡Àå ÀϹÝÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®(Çö½ÃÁ¡¿¡¼­ÀÇ)¿Í ±×°ÍÀÌ SVNAutoversioning ¸í·ÉÀ» »ç¿ëÇÏ´Â mod_dav_svn ¼­¹ö¿¡ ´ëÇÏ´Â Á¶ÀÛÀ» ¾î¶² ´À²¸¿¡ Àß ÇÏ´ÂÁö¸¦ ¼³¸íÇÕ´Ï´Ù. RFC 2518 Àº Á¶±Ý Å©°í, ¾Æ¸¶, ³Ê¹« À¯¿¬ÇÑ ±Ô°ÝÀÔ´Ï´Ù. WebDAV Ŭ¶óÀ̾ðÆ® ÀÇ °¢°¢Àº ǬǬÀÌ ´Ù¸¥ ¿òÁ÷ÀÓÀ» ÇØ, °¢°¢ Á¶±Ý¾¿ ´Ù¸¥ ¹®Á¦¸¦ ÀÏÀ¸Åµ´Ï´Ù.


A.3.1. Win32 À¥ Æú´õ

Windows 98, 2000, À̶ó°í XP´Â,"À¥ Æú´õ"·Î¼­ ¾Ë·ÁÁ® ÀÖ´Â ÅëÇÕµÈ WebDAV Ŭ¶óÀ̾ðÆ®¸¦ ½ÇÀåÇÏ°í ÀÖ½À´Ï´Ù. Windows 98¿¡¼­´Â, ±× ±â´ÉÀº ¸í½ÃÀûÀ¸·Î ÀνºÅç ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ¸¸¾à Á¸ÀçÇÏ°í ÀÖÀ¸¸é,"À¥ Æú´õ" ´Â ¸¶ÀÌ ÄÄÇ»ÅÍ ÀÇ ¾È¿¡, Á÷Á¢ º¸ÀÏ °ÍÀÔ´Ï´Ù. Windows 2000 À¸·Î XP¿¡¼­´Â, ´ÜÁö ¸¶ÀÌ ³×Æ®¿öÅ©ÀÇ °÷À» ¿­¾î, ³×Æ®¿öÅ© Ç÷¹À̽ºÀÇ Ãß°¡ÀÇ ¾ÆÀÌÄÜÀ» ½ÇÇàÇÒ »ÓÀÔ´Ï´Ù. ´ÙÀ̾ó·Î±×°¡ ³ª¿À¸é(ÀÚ), WebDAV ÀÇ URL¸¦ ÀÔ·ÂÇÕ´Ï´Ù. °øÀ¯ Æú´õ´Â ¸¶ÀÌ ³×Æ®¿öÅ© Ç÷¹À̽º¿¡ Ç¥½ÃµÇ°Ô µË´Ï´Ù.

´ëºÎºÐÀÇ ±âÀÔ Á¶ÀÛÀº ÀÚµ¿ ¹öÀüÈ­ µÈ mod_dav_svn ¼­¹ö¿¡ Àß ¾×¼¼½º ÇÒ ¼ö ÀÖ½À´Ï´Ù¸¸, ¸î°³ÀÇ ¹®Á¦µµ ÀÖ½À´Ï´Ù:

  • ¸¸¾à ÄÄÇ»ÅÍ°¡ NTµµ¸ÞÀÎÀÇ ¸â¹ö¶ó°í, WebDAV °øÀ¯¿¡ Á¢¼ÓÇÒ ¼ö ¾ø´Â °Íó·³ º¸ÀÔ´Ï´Ù. ±×°ÍÀº ¹Ýº¹ÇØ À̸§°ú Æнº¿öµå¸¦ ¿ä±¸ÇØ, ±×°ÍÀº Apache ¼­¹ö°¡ ÀÎÁõÀ» ¿ä±¸ÇÏÁö ¾ÊÀ» ¶§Á¶Â÷ ÀϾ´Ï´Ù. ¾î´À »ç¶÷µéÀº, À¥ Æú´õ´Â MicrosoftÀÇ SharePoint DAV ¼­¹ö¿¡ º°·Î µ¿ÀÛÇϵµ·Ï(µíÀÌ) ¼³°èµÇ¾ú±â ¶§¹®À̶ó°í »ý°¢ÇÏ°í ÀÖ½À´Ï´Ù. ¸¸¾à ¸Ó½ÅÀÌ NTµµ¸ÞÀÎÀÌ ÀϺο¡¼­ ¾øÀ¸¸é, ±× °øÀ¯´Â ¹®Á¦ ¾ø°Ô ¸¶¿îÆ® ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¼ö¼ö²²³¢´Â ¾ÆÁ÷µµ ÇØ°áÇÏ°í ÀÖÁö ¾Ê½À´Ï´Ù.

  • ÆÄÀÏÀº °øÀ¯·ÎºÎÅÍ ÆíÁýÀ» À§Çؼ­(¶§¹®¿¡) Á÷Á¢ ¿­ ¼ö°¡ ¾ø½À´Ï´Ù. Ç×»ó Àоîµé¿© Àü¿ëÀÌ µË´Ï´Ù. mod_dav_lockÀÇ Å×Å©´ÐÀº µµ¿ò¿¡ µÇÁö ¾Ê½À´Ï´Ù. À¥ Æú´õ´ÂLOCK ¸Þ¼Òµå¸¦ ÀüÇô ÀÌ¿ëÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ±×·¯³ª, Àü¿¡ ÁöÀûÇÑ °Íó·³ "Ä«ÇÇ, ÆíÁý, ½á ¹Ýȯ" ¹æ¹ýÀº Àß ¿òÁ÷ÀÔ´Ï´Ù. °øÀ¯»óÀÇ ÆÄÀÏÀº ·ÎÄ÷ΠÆíÁýÇÑ Ä«ÇÇ·Î ¹®Á¦ ¾ø°Ô µ¡¾²±âÇÒ ¼ö ÀÖ½À´Ï´Ù.


A.3.2. Mac OS X

¾ÖÇÃÀÇ OS X operating system´Â ÅëÇÕµÈ WebDAV Ŭ¶óÀ̾ðÆ® ÀÔ´Ï´Ù. ÆÄÀδõÀÇ Go ¸Þ´º·Î"¼­¹ö¿¡ Á¢¼Ó" ¾ÆÀÌÅÛ (À»)¸¦ ¼±ÅÃÇØ ÁÖ¼¼¿ä. WebDAVÀÇ URL¸¦ ÀÔ·ÂÇϸé, º¸Åë ÆÄÀÏ ¼­¹ö¿Í °°ÀÌ µ¥½ºÅ©Å¾»óÀÇ µð½ºÅ©·Î¼­ º¸ÀÌ°Ô µË´Ï´Ù. [3]

ºÒÇàÇÏ°Ôµµ, ÀÌ Å¬¶óÀ̾ðÆ®´ÂLOCK ÀÇ ¼­Æ÷Æ®°¡ ¾ø±â ¶§¹®¿¡, mod_dav_svn ÀÇ ÀÚµ¿ ¹öÀüÈ­ÀÇ µ¿ÀÛÀ» °ÅºÎÇÕ´Ï´Ù. Mac OS X ´Â ÃÖÃÊÀÇ HTTP OPTIONS ±â´É ±³È¯½Ã¿¡ LOCK ÀÇ ´É·ÂÀÌ ¾ø´Â °ÍÀ» ¾Ë¾Æ, Subversion ÀúÀå¼Ò(repository)¸¦ Àоîµé¿© Àü¿ëÀÇ °øÀ¯·Î¼­ ¸¶¿îÆ®ÇÏ´Â °áÁ¤À» ÇÕ´Ï´Ù. ±× ÈÄ¿¡¼­´Â ±âÀÔ Á¶ÀÛÀº ÀüÇô ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÐ°í ¾²±â °¡´ÉÇÑ °øÀ¯ (À¸)·Î¼­ ÀúÀå¼Ò(repository)¸¦ ¸¶¿îÆ®Çϱâ À§Çؼ­´Â, Àü¿¡ ³íÀÇÇÑ mod_dav_lock ÀÇ Æ®¸¯À» »ç¿ëÇÒÇÊ¿ä°¡ ÀÖ½À´Ï´Ù . Çѹø ¶ôÀÌ ¿òÁ÷ÀÌ°í ÀÖ´Â °Íó·³ º¸À̸é, °øÀ¯´Â ¸Å¿ì Àß ÇൿÇÕ´Ï´Ù. ÆÄÀÏÀº ÀÐ°í ¾²±â ¸ðµå·Î Á÷Á¢ ¿­ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, º¸Á¸ÀÇ Á¶ÀÛÀº, ½ÇÁ¦·Î´Â ÀϽÃÀûÀÎ Àå¼Ò¿¡PUT ÇØ, ¿ø·¡ÀÇ ÆÄÀÏÀ»DELETE ÇØ, ±× ÈÄ, ¿øÀÇ ÆÄÀϸíĪ ¿¡, ±× ÀϽÃÆÄÀÏÀ»MOVE ÇÏ´Â °ÍÀ¸·Î ÇàÇÕ´Ï´Ù. º¸Á¸¸¶´Ù, »õ·Î¿î SubversionÀÇ ¸®¹öÀüÀ» ¼¼ °³ ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¶Ç ÇϳªÀÇ ÁÖÀÇ: OS X ÀÇ WebDAV Ŭ¶óÀ̾ðÆ®´Â HTTP ±è´ÙÀÌ·ºÆ®¿¡ ´ëÇØ ÇÊ¿äÀÌ»óÀ¸·Î ¹Î°¨ÇÕ´Ï´Ù. ¸¸¾à ÀúÀå¼Ò(repository)¸¦ ÀüÇô ¸¶¿îÆ®ÇÒ ¼ö ¾ø´Ù (ÀÌ)¶ó¸é,httpd.confÀÇBrowserMatch ¸í·ÉÀ» À¯È¿ÇÏ°Ô ÇÒ ÇÊ¿ä°¡ ÀÖÀ»Áöµµ ¸ð¸¨´Ï´Ù:

BrowserMatch "^WebDAVFS/1. [012]" redirect-carefully

A.3.3. Unix: Nautilus 2

Nautilus ´Â GNOME µ¥½ºÅ©Å¾ÀÇ °ø½ÄÀûÀÎ ÆÄÀÏ °ü¸®ÀÚ/ ºê¶ó¿ìÀúÀÔ´Ï´Ù. Ȩ ÆäÀÌÁö´Â http://www.gnome.org/projects/nautilus/ ¿¡ ÀÖ½À´Ï´Ù. Nautilus À©µµ¿ì·Î WebDAV URL¸¦ ÀÔ·ÂÇÏ´Â °Í¸¸À¸·Î, DAV °øÀ¯°¡ ·ÎÄà ÆÄÀÏ ½Ã½ºÅÛ°ú °°ÀÌ º¸ÀÔ´Ï´Ù.

ÀϹÝÀûÀ¸·Î, Nautilus 2 ´Â mod_dav_svn ÀÇ ÀÚµ¿ ¹öÀüÈ­°¡ °ÅÀÇ Àß ¿òÁ÷ÀÔ´Ï´Ù¸¸, ÀÌÇÏ¿¡´Â ÁÖÀÇÀÔ´Ï´Ù:

  • °øÀ¯·ÎºÎÅÍ Á÷Á¢ ¿¬ ÆÄÀÏÀº Àоîµé¿© Àü¿ëÀ¸·Î ´Ù·ç¾îÁý´Ï´Ù. mod_dav_lockÀÇ Æ®¸¯Àº ÀüÇô È¿°ú°¡ ¾ø´Â °Íó·³ º¸ÀÔ´Ï´Ù. Nautilus ´ÂLOCK ¸Þ¼Òµå¸¦ ¿ÏÀüÈ÷ ¹®Á¦¿¡ ÇÏ°í ÀÖÁö ¾Ê´Â °Í °°½À´Ï´Ù. "·ÎÄÿ¡ Ä«ÇÇ, ÆíÁý, ½á ¹Ýȯ" ÀÇ Æ®¸¯Àº ¿òÁ÷ÀÌ´Â °Í °°½À´Ï´Ù¸¸. ºÒÇàÇÏ°Ôµµ Nautilus ´Â DELETE ¸¦ »ç¿ëÇØ ÃÖÃÊ·Î ³°Àº ÆÄÀÏÀ» µ¡¾²±âÇϹǷÎ, ±×°ÍÀÌ, Çϳª ´õÀÇ ¸®¹öÀüÀ» ¸¸µé¾î ¹ö¸³´Ï´Ù.

  • ÆÄÀÏÀ» µ¡¾²±âÇϰųª ÀÛ¼ºÇÒ °æ¿ì¿¡´Â, Nautilus ´Â ¿ì¼± ÇÏ´ÃÀÇ ÆÄÀÏÀ»PUT ÇÏ°í ³ª¼­, Á¦2ÀÇPUT·Î ±×°ÍÀ» µ¡¾²±âÇÕ´Ï´Ù. ÀÌ°ÍÀº, Çϳª°¡ ¾Æ´Ï°í, µÎ Subversion ÆÄÀÏ ½Ã½ºÅÛ ¸®¹öÀüÀ» ¸¸µé¾î ¹ö¸³´Ï´Ù.

  • ÁýÇÕÀ» »èÁ¦ÇÒ °æ¿ì¿¡´Â, ÁýÇÕ ÀÚ½ÅÀÇ ´ë½Å¿¡, °³º°ÀÇ ¾ÆÀÌ¿¡ ´ëÇؼ­ HTTP DELETE ¸¦ ¹ßÇàÇÕ´Ï´Ù. ÀÌ°ÍÀº, ÆÄÀÏÀÇ ¼ö¸¸ÀÇ »õ·Î¿î ¸®¹öÀüÀ» ¸¸µé¾î ¹ö¸³´Ï´Ù.


A.3.4. Linux davfs2

Linux davfs2 ´Â Linux Ä¿³ÚÀÇ ÆÄÀÏ ½Ã½ºÅÛ ¸ðµâ·Î, °³¹ß Ȩ ÆäÀÌÁö´Â http://dav.sourceforge.net/ ¿¡ ÀÖ½À´Ï´Ù. ÀνºÅç Çϸé(ÀÚ), WebDAV ³×Æ®¿öÅ© °øÀ¯°¡ º¸Åë UnixÀÇmount Ä¿¸àµå·Î ¸¶¿îÆ®ÇÒ ¼ö ÀÖ´Ù °°°Ô µË´Ï´Ù.

¼Ò¹®¿¡ ÀÇÇϸé, ÀÌ DAV Ŭ¶óÀ̾ðÆ®´Â mod_dav_svnÀÇ ÀÚµ¿ ¹öÀü È­°¡ ÀüÇô µ¿ÀÛÇÏÁö ¾Ê´Ù´Â °ÍÀÔ´Ï´Ù. ¼­¹ö¿¡ ´ëÇÑ ±âÀÔÀÇ ¸ðµÎ¿¡ ´ëÇØ, ¿ì¼±LOCK ¿ä±¸¸¦ ³À´Ï´Ù¸¸, ÀÌ°ÍÀº mod_dav_svn °¡ ¼­Æ÷Æ®ÇÏ°í ÀÖÁö ¾Ê´Â °ÍÀÔ´Ï´Ù. Çö½ÃÁ¡¿¡¼­´Â mod_dav_lock °¡ ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ´ÂÁö ¾î¶²Áö¸¦ ³ªÅ¸³»´Â ÀÚ·á´Â ¾ø½À´Ï´Ù.

Notes

[1]

ÀÌ·± ÀÌÀ¯ ¶§¹®¿¡ »ç¶÷µéÀº ³ó´ãÀ¸·Î WebDAV Ŭ¶óÀ̾ðÆ®¸¦ "WebDA" Ŭ¶óÀ̾ðÆ®¶ó°í ºÎ¸£±âµµ ÇÕ´Ï´Ù!

[2]

Subversion´Â ¾ðÁ¦ÀÇ ³¯Àΰ¡, º¸Á¸µÈ üũ¾Æ¿ô ¶ôÀÇ ¸ðµ¨À» °³¹ßÇÒÁöµµ ¸ð¸¨´Ï´Ù. ±×°ÍÀº Ä«ÇÇ¡¤¼öÁ¤¡¤¸ÓÁö ¸ðµ¨°ú Àß °øÁ¸ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸, ¾Æ¸¶ °ð¹Ù·Î´Â ¹«¸®ÀÌ°ÚÁö¿ä.

[3]

Unix À¯Àú´Âmount -t webdav URL /mountpoint (À»)¸¦ ½ÇÇàÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.


ID
Password
Join
You have an unusual equpment for success. Be sure to use if properly.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2004-12-17 14:20:49
Processing time 0.0033 sec