{{{#!html Emacs¿¡¼­ KLDP.net ¼­ºñ½ºÀÇ Subversion(SVN)ÀÌ¿ëÇϱâ
}}} [[TableOfContents]] == ÀÌ ¹®¼­´Â == [Emacs]ÀÇ subversion È®ÀåÀ» ÀÌ¿ëÇÏ¿© kldp.net ¼­ºñ½º¿¡ µî·ÏµÈ ÇÁ·Î±×·¥À» ´Ù¿î·Îµå/¼öÁ¤/¾÷·Îµå Çϴµ¥ µµ¿òÀÌ µÇ±â À§ÇÑ ¸ñÀûÀ¸·Î ÀÛ¼ºµÇ¾ú½À´Ï´Ù. == [http://kldp.net KLDP.net ] == KLDP.net ´Â Open Source °³¹ßÀÚ¿¡°Ô Á¦°øµÇ´Â ¹«·á ¼­ºñ½º·Î¼­, Subversion, ¸ÞÀϸµ ¸®½ºÆ®, ¹ö±× Æ®·¡Å·, °ø°³ °Ô½ÃÆÇ, ÀÓ¹« °ü¸®, À¥»çÀÌÆ® È£½ºÆÃ, ¿µ±¸ÀûÀÎ ÆÄÀÏ ¾ÆÄ«À̺ê, ¹é¾÷ ¼­ºñ½º¸¦ Æ÷ÇÔÇÑ ¿ÏÀüÇÑ À¥±â¹Ý °ü¸® ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù. == Linux ȯ°æ¿¡¼­ Emacs + Subversion »ç¿ëÇϱâ == === ¼³Ä¡ ¹× ¼³Á¤ === Emacs ¿Í SubversionÀ» ¿¬µ¿Çؼ­ kldp.netÀÇ ÇÁ·ÎÁ§Æ®¸¦ ¼öÁ¤Çϱâ À§Çؼ­´Â ´ÙÀ½ ÇÁ·Î±×·¥µéÀ» ¼³Ä¡ÇØ¾ß ÇÑ´Ù. * Emacs * Emacs Extension - [http://www.xsteve.at/prg/emacs/psvn.el psvn.el] * subversion * ssh ==== Debian/Ubuntu ȯ°æ¿¡¼­ ¼³Ä¡ ==== ´ÙÀ½ÀÇ ¸í·ÉÀ¸·Î °£ÆíÇÏ°Ô ¼³Ä¡°¡ °¡´ÉÇÏ´Ù. emacs22´Â ¾ÈÁ¤¹öÀüÀº ¾Æ´ÏÁö¸¸ ÃÖ½ÅÀÇ ¿©·¯ ±â´ÉÀ» Æ÷ÇÔÇÏ°í ÀÖÀ¸¸ç Å« ¹®Á¦ ¾øÀÌ »ç¿ë°¡´ÉÇϹǷΠÁ÷Á¢ ¼³Ä¡Çغ¸´Â°Íµµ ÁÁ´Ù. ssh-askpass´Â ssh·Î±×ÀÎÀ» Çϴµ¥ ²À ÇÊ¿äÇϹǷΠ¼³Ä¡ÇØÁÖ¾î¾ß ÇÑ´Ù. ´Ù¿î·Îµå ¹ÞÀº psvn.elÀ» ·ÎµåÇÏ´Â °ÍÀº [EmacsInstallScript]¸¦ Âü°íÇÑ´Ù. {{{ shell > apt-get install emacs21 emacs21-bin-common emacs21-common emacs21-el shell > apt-get install subversion subversion-tools shell > apt-get install ssh openssh-client ssh-askpass shell > wget http://www.xsteve.at/prg/emacs/psvn.el; mv psvn.el Emacs_¶óÀ̺귯¸®_µð·ºÅ丮 }}} ==== Gentoo ȯ°æ¿¡¼­ ¼³Ä¡ ==== ==== Redhat / Fedora ȯ°æ¿¡¼­ ¼³Ä¡ ==== === CheckoutÇϱâ === Emacs¸¦ ½ÇÇàÇÏ°í, *Messages* âÀ» ÅëÇØ psvnÀÌ Á¤»óÀûÀ¸·Î ·ÎµåµÈ°ÍÀ» È®ÀÎÇÑ´Ù. Emacs½ÇÇàÀÌ Á¤»óÀûÀ¸·Î ¿Ï·áµÇ¾úÀ¸¸é ´ÙÀ½ ¸í·ÉÀ» ÅëÇØ Subversion¿¡ üũ¾Æ¿ôÇÑ´Ù. °¢ ÇÁ·ÎÁ§Æ®ÀÇ subversion ¼­¹ö ÁÖ¼Ò´Â ÇÁ·ÎÁ§Æ® ȨÆäÀÌÁöÀÇ SCM(Source Code Management) µð·ºÅ丮¿¡¼­ È®ÀÎÇÒ ¼ö ÀÖ´Ù. {{{ Emacs > M-x svn-checkout Emacs - Checkout from repository Url: svn+ssh://»ç¿ëÀÚ¸í@kldp.net/svnroot/ÇÁ·ÎÁ§Æ®¸í Emacs - Checkout to directory: ¼Ò½ºÆÄÀÏÀ» ´Ù¿î·ÎµåÇÒ µð·ºÅ丮 }}} À§¿Í °°ÀÌ ¸í·ÉÀ» ³»¸®¸é Emacs »óÅÂÇ¥½ÃâÀÌ "EShell running checkout" À¸·Î ¹Ù²î°í °ð ÀÛÀº À©µµ¿ì âÀÌ »ý±â¸é¼­ ºñ¹Ð¹øÈ£¸¦ ¹°¾î¿Â´Ù. À̶§ Á¤»óÀûÀ¸·Î ºñ¹Ð¹øÈ£¸¦ ÀÔ·ÂÇÏ¿©µµ ´Ù½Ã ºñ¹Ð¹øÈ£ ÀÔ·ÂâÀÌ ¶ß´Âµ¥ ´çȲÇÏÁö ¸»°í ºñ¹Ð¹øÈ£¸¦ ´Ù½Ã ÀÔ·ÂÇÑ´Ù. ºñ¹Ð¹øÈ£´Â ÃÑ 3¹ø ÀÔ·ÂÇØ¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ºñ¹Ð¹øÈ£ ÀԷ°úÁ¤ÀÌ ¹ø°Å·Î¿ì¸é ¼­¹ö¿¡ sshÅ°¸¦ ³Ö¾îµÎ°í ssh-agent¸¦ »ç¿ëÇÏ´Â ¹æ¹ýµµ ÀÖ´Ù. ÀÚ¼¼ÇÑ ¹æ¹ýÀº [UsingSshAgent] ¶Ç´Â [DocbookSgml/SSH-KLDP]¸¦ Âü°íÇϱ⠹ٶõ´Ù. == Win32 ȯ°æ¿¡¼­ Emacs + Subversion »ç¿ëÇϱâ == === óÀ½ ½ÃµµÇÏ¿´À¸³ª ½ÇÆÐÇÑ ¹æ¹ý === °¡´ÉÇÑ ¸®´ª½º¿Í À¯»çÇÑ È¯°æ¿¡¼­ Emacs+SubversionÀ» »ç¿ëÇϱâ À§ÇØ ´ÙÀ½°ú °°Àº ¹æ¹ýÀ» ½ÃµµÇÏ¿´À¸³ª ½ÇÆÐÇÏ¿´´Ù. ==== ¼³Ä¡ ¹× ¼³Á¤ ==== * Emacs Win32 [EmacsWin32Install] * psvn - Emacs Subversion È®Àå ´Ù¿î·Îµå : http://www.xsteve.at/prg/emacs/psvn.el * Subversion Win32 ȨÆäÀÌÁö : http://subversion.tigris.org/ * ssh Win32 ȨÆäÀÌÁö : http://sshwindows.sourceforge.net/ À§ÀÇ ÇÁ·Î±×·¥À» °¢°¢ÀÇ ¸µÅ©¿¡¼­ ´Ù¿î·ÎµåÇÏ¿© ¼³Ä¡ÇÑ´Ù. ´Ù¿î·ÎµåÇÑ psvn.elÀº emacs°¡ ÀÐÀ» ¼ö ÀÖ´Â µð·ºÅ丮¿¡ ³Ö°í M-x load-lib¸í·ÉÀ» ÅëÇØ emacs¿¡¼­ ºÒ·¯µéÀδÙ. emacs¿¡¼­ .elÆÄÀÏÀ» ·ÎµåÇÏ´Â °Í¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº [EmacsInstallScript]¿¡¼­ ãÀ» ¼ö ÀÖ´Ù. ¼³Ä¡µÈ ssh¸¦ ÀÌ¿ëÇÏ¿© Å°¸¦ »ý¼ºÇÏ°í ¼­¹ö¿¡ ¾÷·ÎµåÇÏ¿© ÀÚµ¿À¸·Î ·Î±×ÀÎÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ssh Å°¸¦ ÀÌ¿ëÇÏ¿© ºñ¹Ð¹øÈ£ ÀÔ·Â ¾øÀÌ ¼­¹ö¿¡ Á¢¼ÓÇÏ´Â ÀÚ¼¼ÇÑ ¹æ¹ýÀº [UsingSshAgent] ¶Ç´Â [DocbookSgml/SSH-KLDP]¿¡ ¼³¸íµÇ¾î ÀÖ´Ù. {{{ # ½ÃÀÛ¹öÆ° > ½ÇÇà > cmdÀ» ÀÌ¿ëÇØ ¿­Àº ÄܼÖâ¿¡¼­ ´ÙÀ½À» ½ÇÇàÇÑ´Ù. shell > ssh-keygen -t rsa shell > cd .shell shell > scp id_rsa.pub user@kldp.net:.ssh/authorized_keys }}} ==== ½ÇÇà ¹× °á°úºÐ¼® ==== À©µµ¿ìÀÇ ÄܼÖâ¿¡¼­ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÏ¿© Subversion + ssh°¡ Á¤»óÀûÀ¸·Î µ¿ÀÛÇÏ´Â °ÍÀ» È®ÀÎÇØ º»´Ù. ¸¶Áö¸·¿¡ svn¸í·ÉÀ» ³»·ÈÀ»¶§ ¼­¹ö¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Â ºñ¹Ð¹øÈ£¸¦ ¼¼¹ø ¹¯´Âµ¥, À̴ óÀ½ ÀÔ·ÂÇÑ ºñ¹Ð¹øÈ£°¡ À߸øµÇ¾î¼­ ´Ù½Ã ¹¯´Â°ÍÀÌ ¾Æ´Ï¹Ç·Î ´çȲÇÏÁö ¸»°í ºñ¹Ð¹øÈ£¸¦ ´Ù½Ã ÀÔ·ÂÇϵµ·Ï ÇÑ´Ù. {{{ shell > cd c:\testdir shell > svn checkout svn+ssh://»ç¿ëÀÚ¸í@kldp.net/svnroot/ÇÁ·ÎÁ§Æ®¸í }}} Emacs¿¡¼­ psvnÀ» »ç¿ëÇÏ¿© svn¼­¹ö¿¡ Á¢¼ÓÇÏ´Â °ÍÀ» ½ÃÇèÇØ º»´Ù. psvn.elÀº ÀÌ¹Ì ·ÎµåµÇ¾î ÀÖ´Â »óÅ¿©¾ß ÇÑ´Ù. {{{ Emacs > M-x svn-checkout svn://»ç¿ëÀÚ¸í@kldp.net/svnroot/ÇÁ·ÎÁ§Æ®¸í }}} À§ÀÇ ½ÃÇèÀ» ÅëÇØ Emacs + psvn, ssh + subversionÀÌ Á¤»óÀûÀ¸·Î µ¿ÀÛÇÔÀ» È®ÀÎÇÏ¿´´Ù. ±×·¯³ª ´ÙÀ½ ¸í·ÉÀ» ÅëÇØ Emacs + psvn => ssh + subversionÀÇ ¿¬µ¿À» ½ÃÇèÇغ¸¸é Á¦´ë·Î µ¿ÀÛÇÏÁö ¾Ê´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. È®ÀÎÇØ º¸¸é "Pseudo-terminal will not be allocated because stdin is not a terminal" ¶ó´Â ¿¡·¯¸Þ¼¼Áö¿Í ÇÔ²² sshÁ¢¼Ó¿¡ ½ÇÆÐÇÏ°í ÀÖ´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. Emacs¿¡¼­ ssh¿Í °°Àº ¿ÜºÎÇÁ·Î±×·¥À» ½ÇÇàÇϴµ¥ Àå¾Ö°¡ ÀÖ´Â °ÍÀ¸·Î »ý°¢µÈ´Ù. {{{ Emacs > M-x svn-checkout svn+ssh://»ç¿ëÀÚ¸í@kldp.net/svnroot/ÇÁ·ÎÁ§Æ®¸í }}} === ´ë¾ÈÃ¥ === sshwindows + subversion Win32¸¦ Emacs¿Í ¿¬µ¿ÇÏÁö ¾Ê°í, º°µµÀÇ Subversion ÇÁ·Î±×·¥À» »ç¿ëÇÑ´Ù. °¡Àå ³Î¸® ¾Ë·ÁÁö°í »ç¿ëÀÌ ½¬¿î °ÍÀº tortoisesvn( http://tortoisesvn.tigris.org ) À¸·Î, ÇÑ±Û È®ÀåÆѱîÁö ÀÖ´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÌ´Ù. ÀÚ¼¼ÇÑ »ç¿ë ¿¹´Â ´ÙÀ½ ¸µÅ©¿¡¼­ º¼ ¼ö ÀÖ´Ù. i. [TortoiseSVN] i. [TortoiseSVN-USE] == Âü°í ÀÚ·á == * http://www.emacswiki.org/cgi-bin/wiki/SubVersion * http://sshwindows.sourceforge.net/ * [UsingSshAgent] * [DocbookSgml/SSH-KLDP] * http://tortoisesvn.tigris.org/ ---- '''¹®¼­ º¯°æ»çÇ×''' * óÀ½ ¸¸µê: ¾Æºü°õ 20070522 ---- See also: * EmacsTinyTips ---- CategoryEmacs