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. WebDAVRFC 2518 Àº ¸î °¡Áö °³³ä°ú °Å±â¿¡ µ¿¹ÝÇÏ´Â HTTP 1.1 ÀÇ È®Àå ¸Þ¼Òµå¸¦ Á¤ÀÇÇÏ°í ÀÖ½À´Ï´Ù. ±×°ÍÀº À¥À» Á» ´õ º¸ÆíÀûÀÎ ÀÐ°í ¾²±â °¡´ÉÇÑ ¸Åü·Î ¸¸µé¾îÁÖ´Â °ÍÀÔ´Ï´Ù. WebDAV ȣȯ À¥ ¼¹ö´Â ÀϹÝÀûÀÎ ÆÄÀÏ ¼¹öó·³ µ¿ÀÛÇÒ ¼ö ÀÖ°í, Ŭ¶óÀ̾ðÆ®´Â WebDAVÀÇ "°øÀ¯"¸¦ NFS³ª SMB °øÀ¯Ã³·³ ¸¶¿îÆ® ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ ±âº»ÀûÀÎ °³³äÀÔ´Ï´Ù. ±×·¯³ª RFC 2518 Àº DAV¶ó´Â ¸» Áß¿¡ "V"°¡ ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í, ¾î¶² Á¾·ùÀÇ ¹öÀü(Version) °ü¸® ¸ðµ¨µµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®¿Í ¼¹ö´Â ÆÄÀÏÀ̳ª µð·ºÅ丮°¡ ÇϳªÀÇ ¹öÀü¸¸ Á¸ÀçÇÑ´Ù°í °¡Á¤ÇÏ°í, ±×°ÍÀ» °è¼ÓÇؼ µ¤¾î¾¹´Ï´Ù. [1] ±âº»ÀûÀÎ WebDAV¿¡¼ µµÀÔµÈ »õ·Î¿î °³³ä°ú ¸Þ¼Òµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
A.1.2. DeltaV È®ÀåRFC 2518 Àº ¹öÀü°ü¸®¶ó´Â °³³äÀÌ ¾ø±â ¶§¹®¿¡, WebDAV¿¡ ¹öÀü °ü¸® ±â´ÉÀ» Ãß°¡ÇÑ RFC 3253À» ¾²´Â ÀÏÀÌ ´Ù¸¥ ±×·ì¿¡ ¸Ã°ÜÁ³½À´Ï´Ù. WebDAV/DeltaV Ŭ¶óÀ̾ðÆ®¿Í ¼¹ö´Â ÀÚÁÖ "DeltaV" Ŭ¶óÀ̾ðÆ®¿Í ¼¹ö·Î ºÒ¸³´Ï´Ù. DeltaV´Â ±âº»ÀûÀÎ WebDAVÀÇ Á¸À縦 Æ÷ÇÔÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù. DeltaV ´Â ¿ÏÀüÈ÷ »õ·Î¿î ´Ü¾î¸¦ µµÀÔÇß½À´Ï´Ù¸¸, ³î¶óÁö ¸¶¼¼¿ä. »ý°¢Àº ¸Å¿ì Á÷°üÀûÀÔ´Ï´Ù. DeltaV·Î µµÀÔµÈ »õ·Î¿î °³³ä°ú ¸Þ¼Òµå´Â:
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ÀÇ ¿ø½Ã Äڵ带 Àаųª °³¹ßÀÚ¿¡°Ô (µè)¹¯°Å³ª ÇÏ´Â °ÍÀÇ ´ë½Å¿¡ µÈ´Ù°í´Â»ý°¢ÇÏÁö ¸»¾ÆÁÖ¼¼¿ä.
A.2.2. ÀÚµ¿ ¹öÀüÈÀÇ ¼Æ÷Æ®ÁýÇÊ ½ÃÁ¡¿¡¼, ÀÌ ¼¼»ó¿¡°Ô´Â ¾ÆÁ÷ ¸Å¿ì ¸î ¾È µÇ´Â Á¾·ùÀÇ DeltaV Ŭ¶óÀ̾ðÆ® ¹Û¿¡ ¾ø´Ù°í ÇÏ´Â °ÍÀÌ Çö½ÇÀÔ´Ï´Ù. RFC 3253 Àº ¾ÆÁ÷ ºñ±³Àû »õ·Î¿î ±Ô°ÝÀÔ´Ï´Ù. ±×·¯³ª, À¯Àú´Â"¹ü¿ëÀûÀÎ"Ŭ¶óÀ̾ðÆ®¿¡ ¾×¼¼½º ÇÑ´Ù (ÀÌ)°¡ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×°ÍÀº, °ÅÀÇ ¸ðµç Çö´ëÀûÀÎ ¿ÀÆÛ·¹ÀÌÆÃ(operating) ½Ã½ºÅÛÀº, ÅëÇÕµÈ ±âº»ÀûÀÎ WebDAV Ŭ¶óÀ̾ðÆ®¸¦ ½ÇÀåÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù. ÀÌ°ÍÀ» ¸¶À½¿¡ ¼¼¿ö, Subversion °³¹ßÀÚ´Â ¸¸¾à Subversion1. 0ÀÌ ¾î¶°ÇÑ Á¦ÈÞ ±â´ÉÀ» °¡Áö°Ô µÈ´Ù°í Çصµ, DeltaVÀÇ ÀÚµ¿ ¹öÀüÈÀÇ ±¸Á¶¸¦ ¼Æ÷Æ®ÇÏ´Â °ÍÀÌ °¡Àå ÁÁÀº ¼±Åà (ÀÌ)¶ó°í »ý°¢ÇÏ°í ÀÖ½À´Ï´Ù. mod_dav_svn ÀÇ ÀÚµ¿ ¹öÀüÈÀÇ ±¸Á¶¸¦ À¯È¿ÇÏ°Ô ÇÏ·Á¸é , httpd.conf ÆÄÀÏÀÇ Locationºí·ÏÀ¸·Î, SVNAutoversioning ¸í·ÉÀ» »ç¿ëÇØ ÁÖ¼¼¿ä. ÀÌ·± ´À³¦ÀÔ´Ï´Ù:
º¸Åë, 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 ¸í·ÉÀ» Ãß°¡ÇØ ÁÖ¼¼¿ä. ÀÌÇÏ¿Í °°Àº ´À³¦ÀÔ´Ï´Ù:
ÀÌ Å×Å©´ÐÀº, Á¶±Ý À§ÇèÇÕ´Ï´Ù: ¾î´À ÀǹÌ, 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 ¼¹ö¿¡ Àß ¾×¼¼½º ÇÒ ¼ö ÀÖ½À´Ï´Ù¸¸, ¸î°³ÀÇ ¹®Á¦µµ ÀÖ½À´Ï´Ù:
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 ¸í·ÉÀ» À¯È¿ÇÏ°Ô ÇÒ ÇÊ¿ä°¡ ÀÖÀ»Áöµµ ¸ð¸¨´Ï´Ù:
A.3.3. Unix: Nautilus 2Nautilus ´Â GNOME µ¥½ºÅ©Å¾ÀÇ °ø½ÄÀûÀÎ ÆÄÀÏ °ü¸®ÀÚ/ ºê¶ó¿ìÀúÀÔ´Ï´Ù. Ȩ ÆäÀÌÁö´Â http://www.gnome.org/projects/nautilus/ ¿¡ ÀÖ½À´Ï´Ù. Nautilus À©µµ¿ì·Î WebDAV URL¸¦ ÀÔ·ÂÇÏ´Â °Í¸¸À¸·Î, DAV °øÀ¯°¡ ·ÎÄà ÆÄÀÏ ½Ã½ºÅÛ°ú °°ÀÌ º¸ÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î, Nautilus 2 ´Â mod_dav_svn ÀÇ ÀÚµ¿ ¹öÀüÈ°¡ °ÅÀÇ Àß ¿òÁ÷ÀÔ´Ï´Ù¸¸, ÀÌÇÏ¿¡´Â ÁÖÀÇÀÔ´Ï´Ù:
A.3.4. Linux davfs2Linux davfs2 ´Â Linux Ä¿³ÚÀÇ ÆÄÀÏ ½Ã½ºÅÛ ¸ðµâ·Î, °³¹ß Ȩ ÆäÀÌÁö´Â http://dav.sourceforge.net/ ¿¡ ÀÖ½À´Ï´Ù. ÀνºÅç Çϸé(ÀÚ), WebDAV ³×Æ®¿öÅ© °øÀ¯°¡ º¸Åë UnixÀÇmount Ä¿¸àµå·Î ¸¶¿îÆ®ÇÒ ¼ö ÀÖ´Ù °°°Ô µË´Ï´Ù. ¼Ò¹®¿¡ ÀÇÇϸé, ÀÌ DAV Ŭ¶óÀ̾ðÆ®´Â mod_dav_svnÀÇ ÀÚµ¿ ¹öÀü È°¡ ÀüÇô µ¿ÀÛÇÏÁö ¾Ê´Ù´Â °ÍÀÔ´Ï´Ù. ¼¹ö¿¡ ´ëÇÑ ±âÀÔÀÇ ¸ðµÎ¿¡ ´ëÇØ, ¿ì¼±LOCK ¿ä±¸¸¦ ³À´Ï´Ù¸¸, ÀÌ°ÍÀº mod_dav_svn °¡ ¼Æ÷Æ®ÇÏ°í ÀÖÁö ¾Ê´Â °ÍÀÔ´Ï´Ù. Çö½ÃÁ¡¿¡¼´Â mod_dav_lock °¡ ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ´ÂÁö ¾î¶²Áö¸¦ ³ªÅ¸³»´Â ÀÚ·á´Â ¾ø½À´Ï´Ù. Notes
|