|
|
|
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)¸¦ ´Ù·é´Ù.
[edit]
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À» ¸¸µé ¼ö ÀÖ´Ù.
[edit]
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) ¿À·ù¸¸ Ãâ·ÂÇÑ´Ù. º¸ÅëÀº ÃßÃøÇÏ¿© ó¸®ÇÑ ³»¿ë µîµµ °°ÀÌ Ãâ·ÂÇÑ´Ù.
|
|
|||||||||