´ë¹®    
FindPage  |  TitleIndex  |  UserPreferences  |  [http]me2day  |  redpixel
RecentChanges
 


GNU patch °£·«»ç¿ë¹ý

Copyright (c) 2001 Jeon, Jeongho.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

GNU patch´Â ¿øº»°ú ¼öÁ¤º»»çÀÌÀÇ Â÷À̸¦ ±â·ÏÇÑ patchfileÀ» °¡Áö°í ¿øº»À» ¼öÁ¤º»°ú °°ÀÌ ¼öÁ¤ÇÏ´Â ÇÁ·Î±×·¥À¸·Î, ¸®´ª½º Ä¿³Î ¼Ò½ºÄÚµå¿Í °°ÀÌ ±Ô¸ð°¡ Å« ¼ÒÇÁÆ®¿þ¾îÀÇ ¹öÀü°£ÀÇ Â÷À̸¦ ¹èÆ÷Çϴµ¥ »ç¿ëÇÑ´Ù. patchfileÀº º¸Åë diff·Î ¸¸µç´Ù.

óÀ½ Larry WallÀÌ ¸¸µç ÈÄ, ¼öÁ¤À» °ÅÄ¡¸ç ¹ÙÀ̳ʸ® ÆÄÀÏ Áö¿ø µî ¿©·¯ ±â´ÉÀÌ Ãß°¡µÇ¾ú´Ù. ±×·¡¼­ ±âÁ¸ÀÇ patch, GNU patch, POSIX patch´Â ¼¼ºÎÀûÀÎ ±â´É°ú ¿É¼Ç¿¡¼­ Â÷À̰¡ ³­´Ù. ¿©±â¼­´Â GNU patch (2.5.4)¸¦ ´Ù·é´Ù.

patchfile ¸¸µé±â #

±âº»ÀûÀ¸·Î diff·Î ¿øº» µð·ºÅ丮¿Í ¼öÁ¤º» µð·ºÅ丮ÀÇ Â÷À̸¦ ¾î¶»°Ôµç ¾ò¾î³»¸é µÈ´Ù. ±¸Ã¼ÀûÀÎ ¿¹´Â ´ÙÀ½°ú °°´Ù.

$ LC_ALL=C TZ=UTC0 diff -Naur gcc-2.7 gcc-2.8
$ LC_ALL=C TZ=UTC0 diff -rc2P gcc-2.3.2 gcc-2.3.3 | \
> gzip -9 >gcc-2.3.2-2.3.3.patch.gz

À§´Â manpageÀÇ ¿¹À̰í, ¾Æ·¡´Â Information For Maintainers of GNU SoftwareÀÇ ¿¹ÀÌ´Ù. ¿©±â¼­ ¾Õ¿¡ »ç¿ëÇÑ LC_ALL=C TZ=UTC0Àº patchfile¿¡ ±â·ÏµÉ ½Ã°£ Çü½ÄÀ» °íÁ¤½Ã۱â À§Çؼ­ÀÌ´Ù. ¶Ç CVS¿Í °°Àº ÇÁ·Î±×·¥À¸·Îµµ patchfileÀ» ¸¸µé ¼ö ÀÖ´Ù.

patchfile Àû¿ëÇϱâ #

patch´Â patchfile¿¡ ±â·ÏµÈ ÆÄÀÏÀ» ã±â À§ÇØ ¿©·¯°¡Áö ¹æ¹ýÀ» ½ÃµµÇÑ´Ù. ¶Ç ÇöÀç °¡Áö°í ÀÖ´Â ¿øº»ÀÌ patchfileÀ» ¸¸µé¶§ »ç¿ëÇÑ °Í°ú µ¿ÀÏÇÏÁö ¾ÊÀº °æ¿ì¿¡µµ ¿©·¯°¡Áö ÃßÃøÀ» ÇÏ¿© ó¸®ÇÏ·Á°í ½ÃµµÇÑ´Ù. ÀÌ·± ¹æ¹ýµéÀº manpage¿¡ ¼³¸íµÇÀÖ´Ù. ±×·¯³ª º¸Åë -p ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÆÄÀÏÀÇ Á¤È®ÇÑ À§Ä¡¸¦ ¾Ë·ÁÁֱ⠶§¹®¿¡ patch°¡ ½Ç¼ö·Î ´Ù¸¥ ÆÄÀÏÀ» ¼öÁ¤ÇÏ´Â °æ¿ì´Â °ÆÁ¤ÇÏÁö ¾Ê¾Æµµ µÈ´Ù.

patch°¡ ½ÇÆÐÇÑ °æ¿ì, ÆÄÀÏ¸í µÚ¿¡ .rej¸¦ ºÙÀÎ ÆÄÀÏÀ» »ý¼ºÇÑ´Ù. patch¸¦ ½ÇÇàÇÑ ÈÄ ÀÌ·± ÆÄÀϵéÀÌ »ý±ä´Ù¸é ¹«¾ùÀÌ ¹®Á¦ÀÎÁö »ìÆìºÁ¾ß ÇÑ´Ù.

ÀÌ¹Ì patch¸¦ ½ÇÇàÇÑ ¿øº»¿¡ ¶Ç´Ù½Ã patch¸¦ ½ÇÇàÇϸé patch´Â ´Ù½Ã ¿øº»À¸·Î µÇµ¹¸±Áö¸¦ ¹°¾îº»´Ù. ÀÌ´Â -R (--reverse) ¿É¼ÇÀ» Á÷Á¢ »ç¿ëÇÑ °Í°ú °°´Ù.

¶Ç patch´Â diff °á°ú°¡ ¾Æ´Ñ ºÎºÐÀ» ¾ÕµÚ·Î ¹«½ÃÇϹǷÎ, patchfile ³»¿ëÀÌ ¸ÞÀÏÀ̳ª ´º½º ¸Þ¼¼Áö¿¡ Æ÷ÇÔµÈ °æ¿ì ±× ±Û Àüü¸¦ ÀÔ·ÂÀ¸·Î »ç¿ëÇØµµ µÈ´Ù. ¸ÞÀÏ ¸®´õ³ª ´º½º ¸®´õ¿¡¼­ ¸Þ¼¼Áö ³»¿ëÀ» °¡Áö°í ¿ÜºÎÇÁ·Î±×·¥À» ½ÇÇà½ÃŰ´Â ±â´ÉÀÌ ÀÖ´Ù¸é ÆíÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù.

¼öÁ¤ÇÒ ÆÄÀÏÀ» ¾Æ±Ô¸ÕÆ®·Î Á÷Á¢ ÁöÁ¤ÇØÁÙ ¼ö ÀÖÁö¸¸ º¸Åë ´ÙÀ½°ú °°ÀÌ »ç¿ëÇÑ´Ù. ¾Æ·¡´Â ¸¹ÀÌ »ç¿ëÇÏ´Â ¿É¼ÇµéÀÌ´Ù.

$ patch -pnum < patchfile

-b (--backup) ¿øº» ³»¿ëÀ» ´Ù¸¥ ÆÄÀÏ¿¡ ÀúÀåÇØµÐ´Ù. -B (--prefix), -Y (--basename-prefix), -z (--suffix) ¿É¼ÇÀ¸·Î ÆÄÀϸíÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. 
-d dir (--directory) dir·Î ¿Å°Ü°¡¼­ ÀÛ¾÷À» ÇÑ´Ù. 
-D define (--ifdef) ¼öÁ¤ÇÑ ³»¿ëÀ» #ifdef ... #endif·Î ¹­´Â´Ù. 
-N (--forward) ÀÌ¹Ì patchfileÀÌ Àû¿ëµÈ °æ¿ì ¿øº»À¸·Î µÇµ¹¸®Áö ¾Ê´Â´Ù. -R (--reverse)ÀÇ ¹Ý´ë. 
--dry-run ½ÇÇàÀº Ç쵂 ½ÇÁ¦·Î ÆÄÀÏÀ» ¼öÁ¤ÇÏÁö´Â ¾Ê´Â´Ù. Å×½ºÆ®½Ã »ç¿ë. 
-pnum (--strip) patchfile¿¡ ±â·ÏµÈ °æ·Î¿¡¼­ ¹«½ÃÇÒ "/" °³¼ö. ¾Æ·¡ ÂüÁ¶. 
-s (--silent, --quiet) ¿À·ù¸¸ Ãâ·ÂÇÑ´Ù. º¸ÅëÀº ÃßÃøÇÏ¿© ó¸®ÇÑ ³»¿ë µîµµ °°ÀÌ Ãâ·ÂÇÑ´Ù. 

  • -p´Â patchfile¿¡ ±â·ÏµÈ °æ·Î¸¦ ó¸®ÇÒ¶§ »ç¿ëµÈ´Ù. ¿¹¸¦ µé¾î original°ú updated¶õ µÎ µð·ºÅ丮¸¦ diffÇÏ¿© patchfile¿¡ dif -Naur original/foo/bar.c updated/foo/bar.c¿Í °°Àº ³»¿ëÀÌ ÀÖ´Ù°í ÇÏÀÚ. (original°ú updated µð·ºÅ丮¸¦ ´ã°íÀÖ´Â) patchfileÀ» ¸¸µç µð·ºÅ丮¿¡¼­ patch¸¦ ½ÇÇàÇÑ´Ù¸é -p0 ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ¸¸¾à original µð·ºÅ丮 ¾È¿¡¼­ patch¸¦ ½ÇÇàÇÑ´Ù¸é -p1 ¿É¼ÇÀ¸·Î original/foo/bar.c ´ë½Å foo/bar.c¸¦ »ç¿ëÇÏ°Ô ÇÑ´Ù. ¶Ç -p ¿É¼ÇÀº patchfile¿¡ Àý´ë°æ·Î°¡ ¾²ÀÎ °æ¿ì¿¡µµ À¯¿ëÇÏ´Ù. -p ¿É¼ÇÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é °æ·Î¿¡¼­ ¸¶Áö¸· ÆÄÀÏ¸í¸¸À¸·Î ÆÄÀÏÀ» ã±â¶§¹®¿¡ patch¸¦ ½ÇÇàÇÒ¶§¿¡´Â º¸Åë -p ¿É¼ÇÀº ÁöÁ¤ÇÏ´Â °ÍÀÌ ÁÁ´Ù.


EditText | FindPage | DeletePage | LikePages

Powered by MoniWiki
xhtml1 | css2 | any browser | rss
Last modified 2004-07-11 09:30:18
Loading 0.0613 sec