| INTERDIFF(1) | Man pages | INTERDIFF(1) |
نام (NAME)
interdiff - نمایش تفاوتهای میان دو فایل وصله (diff)
خلاصه دستور (SYNOPSIS)
interdiff [[-p n] | [--strip-match=n]] [[-U n] | [--unified=n]] [[-d PAT] | [--drop-context=PAT]] [[-q] | [--quiet]] [[-z] | [--decompress]] [[-b] | [--ignore-space-change]] [[-B] | [--ignore-blank-lines]] [[-i] | [--ignore-case]] [[-w] | [--ignore-all-space]] [--color=WHEN] [[--interpolate] | [--combine] | [--flip]] [--no-revert-omitted] diff1 diff2
interdiff {[--help] | [--version]}
توضیحات (DESCRIPTION)
interdiff یک diff با قالب یکپارچه (unified format) ایجاد میکند که بیانگر تفاوت میان دو diff است. هر دو diff باید نسبت به فایلهای یکسانی باشند. برای کسب بهترین نتیجه، diffها باید دستکم سه خط زمینه (context) داشته باشند.
برای معکوس کردن یک وصله، از /dev/null برای diff2 استفاده کنید.
برای کاهش مقدار زمینه (context) در یک وصله، استفاده کنید از:
interdiff -U1 /dev/null patchfile
از آنجا که interdiff این مزیت را ندارد که بتواند فایلهایی که قرار است تغییر یابند را بررسی کند، نیازمندیهای سختگیرانهتری نسبت به patch(1) روی قالب ورودی دارد. خروجی GNU diff حتی با افزونهها نیز مناسب خواهد بود، اما اگر قصد دارید از وصلهای استفاده کنید که به صورت دستی ویرایش شده است، شاید بهتر باشد ابتدا آفستها و شمارشها را با استفاده از recountdiff(1) اصلاح و مرتب نمایید.
با این حال، توجه داشته باشید که هر دو وصله باید نسبت به نسخههای یکسانی از همان مجموعه فایلهای اصلی باشند.
فایلهای diff میتوانند در قالب زمینهای (context format) باشند. با این حال، خروجی در قالب یکپارچه (unified format) خواهد بود.
گزینهها (OPTIONS)
-h
-pn, --strip-match=n
-q, --quiet
-Un, --unified=n
-dPATTERN, --drop-context=PATTERN
توجه داشته باشید که تفسیر الگوی جانشین شل، کاراکترهای اسلش یا نقطه را کاراکتر خاص محسوب نمیکند (به بیان دیگر، هیچ فلگی به fnmatch داده نمیشود). این امر باعث میشود الگوهایی از نوع “*/basename” بتوانند بدون محدود کردن تعداد بخشهای مسیر به کار روند.
-i, --ignore-case
-w, --ignore-all-space
-b, --ignore-space-change
-B, --ignore-blank-lines
--color=WHEN
-z, --decompress
--interpolate
--combine
--no-revert-omitted
--help
--version
مثالها (EXAMPLES)
استفاده پایه:
interdiff -z 3.2pre1.patch.gz 3.2pre2.patch.gz
معکوس کردن یک وصله:
interdiff patch /dev/null
معکوس کردن بخشی از یک وصله (و نادیده گرفتن مابقی آن):
filterdiff -i file.c patchfile | \ interdiff /dev/stdin /dev/null
اشکالات (BUGS)
در حال حاضر هیچ باگ شناختهشدهای در interdiff وجود ندارد؛ اما نکاتی وجود دارد. اگر باگی یافتید، لطفاً آن را (به همراه یک مورد آزمایشی کمینه) به Tim Waugh <twaugh@redhat.com> گزارش دهید.
مجموعهای از وصلهها وجود دارند که در آنها اطلاعات کافی برای تولید یک interdiff مناسب وجود ندارد. در این حالت، راهبرد اتخاذشده بازگردانی وصله اصلی و اعمال وصله جدید است. متأسفانه این به این معناست که برگشتپذیر بودن interdiffها تضمینشده نیست.
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
Tim Waugh <twaugh@redhat.com>
Michael K. Johnson <johnsonm@redhat.com>
| 23 June 2009 | patchutils |