این دستور dpatch است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
dpatch - سیستم نگهداری وصله برای دبیان
خلاصه
dpatch [گزینه های] فرمان [فرمان - استدلال]
شرح
dpatch یک سیستم پچ آسان برای بسته های دبیان است که تا حدودی شبیه به dbs است
بسته، اما استفاده از آن بسیار ساده تر است.
این به شما امکان می دهد وصله ها و سایر قالب های سفارشی سازی ساده را در آن ذخیره کنید دبیان/پچ ها و
در غیر این صورت نیازی به سازماندهی مجدد درخت منبع شما نیست. برای دریافت پچ ها
در زمان ساخت اعمال می شود، شما به سادگی باید یک قطعه makefile اضافه کنید و سپس به آن وابسته باشید
وصله/پچ کردن هدف در ساختن or تمیز مرحله دبیان/قوانین. برای انعطاف بیشتر،
می توانید تماس بگیرید /usr/bin/dpatch مستقیما هم
هشدار
dpatch منسوخ شده است، لطفاً به قالب بسته منبع دبیان '3.0 (لحاف)' بروید
بجای. دیدن http://wiki.debian.org/Projects/DebSrc3.0# پرسش و پاسخ برای راهنمایی کوتاه در مورد نحوه انجام
آن است.
GLOBAL OPTIONS
چند گزینه وجود دارد که رفتار کلی dpatch را تغییر می دهد و تأثیر می گذارد
نه تنها در یکی، بلکه بیشتر دستورات موجود.
این گزینه های جهانی عبارتند از:
--workdir (-d) دایرکتوری
بهطور پیشفرض، dpatch وصلههایی را به درخت منبعی که از آن اجرا شده است اعمال میکند. با این
گزینه، می توان آن را تغییر داد و به dpatch گفت که روی درخت دیگری کار کند، هرچند
گرفتن dpatch از نسخه فعلی.
توجه داشته باشید که این فقط یک آرگومان دوم را به اسکریپتهای dpatch ارسال میکند و این کار را نمیکند
به دایرکتوری مشخص شده تغییر دهید. برای انجام این کار، از --chdir گزینه توضیح داده شد
زیر کلیک کنید.
--chdir (-c)
هنگام استفاده از دایرکتوری کاری متفاوت از فهرست فعلی، قبلاً آن را تغییر دهید
تلاش برای اعمال پچ ها
این باید همراه با استفاده شود --workdir گزینه.
--سخت گیرانه (-S)
حالت سختگیرانه را فعال کنید، به این معنی که dpatch حتی در صورت اخطارها زودتر نجات می یابد
(مانند زمانی که سعی می کنید یک پچ را اعمال کنید که قبلاً اعمال شده است - معمولاً این کار انجام می شود
به سادگی از آن بگذرید).
--زور (-F)
اعمال یا عدم کاربرد وصله ها را اجباری کنید، حتی اگر dpatch به طور معمول انجام شود
آنها را نادیده بگیرید زیرا عملیات قبلاً انجام شده بود.
--with-cpp
استفاده اجباری از cpp. استفاده از DPATCH_OPTION_CPP=1 گزینه در
debian/patches/00options فایل.
دستورات
وصله اداره دستورات
یک دستور عمومی برای همه دستورات مدیریت پچ وجود دارد، یعنی آن دستور
خودش فهرستی از نامهای dpatch را برای کار با آن میگیرد، سپس کاری را که قرار است روی همه انجام دهد، انجام میدهد
از آنها، دقیقا به همان ترتیب در خط فرمان مشخص شده است.
سپس، یک نسخه از هر دستور مدیریت پچ با یک وجود دارد -همه پسوند، که انجام می دهد
هیچ استدلالی را انجام نمی دهد و اقدامات لازم را برای هر یک از موارد موجود انجام می دهد
dpatch
آخرین تغییر یک دستور با a است -تا زمان or -تا پسوند، که فقط یکی را می گیرد
آرگومان: نام یک dpatch. اقدام مناسب بر روی تمام dpatch ها انجام خواهد شد
تا و شامل این مورد مشخص شده است.
درخواست [گزینه های]
وصله [گزینه های]
یک یا چند dpatch را به درخت کاری اعمال می کند (در صورتی که نیست دایرکتوری فعلی
غیر از این گفته شد). به طور پیش فرض وصله های مشخص شده دقیقاً به همان صورت اعمال می شوند
به ترتیب مشخص شدند.
گزینه
--stampdir=فهرست راهنما, -s=فهرست راهنما
قرار دادن فایل های مهر در فهرست راهنما به جای پیش فرض دبیان/پچ شده.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
فرمان را مجبور به چاپ نکردن چیزی می کند.
-- پرحرف (-v)
پنهان کردن خروجی اسکریپت را غیرفعال می کند.
اعمال کردن [گزینه های]
پچ کردن [گزینه های]
یک یا چند dpatch را به درخت کاری اعمال می کند (در صورتی که دایرکتوری فعلی نباشد
غیر از این گفته شد). به طور پیش فرض وصله های مشخص شده در معکوس اعمال می شوند
به ترتیب آنها مشخص شده است که به طور کلی باید به ترتیب معکوس اعمال شوند
(در مقایسه با دستور اعمال، یعنی).
گزینه
--stampdir=فهرست راهنما, -s=فهرست راهنما
استفاده از فایل های مهر در فهرست راهنما به جای پیش فرض دبیان/پچ شده.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
فرمان را مجبور به چاپ نکردن چیزی می کند.
-- پرحرف (-v)
پنهان کردن خروجی اسکریپت را غیرفعال می کند.
گربه [گزینه های]
متا اطلاعات مربوط به dpatch را چاپ کنید، مانند نام، نویسنده و توضیحات آن
(هر کدام از آنها را می توان با گزینه مناسب غیرفعال کرد).
گزینه
--بدون متا، --فقط نزولی (-nm، -د)
فقط توضیحات پچ را چاپ کنید.
--فقط نویسنده (-به)
فقط نویسنده پچ را چاپ کنید.
--بدون توصیف، (-nd)
توضیحات پچ را چاپ نکنید.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
فرمان را مجبور به چاپ نکردن چیزی می کند.
فهرست [گزینه های]
نام پچ های داده شده را فهرست کنید. این دستورات واقعاً مفید نیستند، به جز
لیست همه نوع، که تمام وصله های موجود را فهرست می کند.
گزینه
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
وضعیت [گزینه های]
وضعیت وصله های داده شده را چاپ می کند - آیا آنها برای کار اعمال می شوند
درخت یا نه
گزینه
--stampdir=فهرست راهنما, -s=فهرست راهنما
استفاده از فایل های مهر در فهرست راهنما به جای پیش فرض دبیان/پچ شده.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
فرمان را مجبور به چاپ نکردن چیزی می کند.
ورود به سیستم [گزینه های]
گزارش تلاش های وصله داده شده را نشان می دهد.
گزینه
--stampdir=فهرست راهنما, -s=فهرست راهنما
استفاده از فایل های مهر در فهرست راهنما به جای پیش فرض دبیان/پچ شده.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
دستور را مجبور می کند که چیزی چاپ نشود، اما لاگ ها بدون اضافی
شکر در بالا
صدا [گزینه های]
یک dpatch با آرگومان مشخص شده توسط کاربر فراخوانی کنید. همه استدلال ها با الف pkg- پیشوند است
تضمین شده است که توسط خود dpatch استفاده نمی شود و برای استفاده با این بسیار محفوظ است
فرمان
این دستور برای استخراج متا اطلاعات سفارشی از dpatch بسیار مفید است
اسکریپت ها
گزینه
--برهان=ارگ (-a=ارگ)
وصله تماس با ارگ به عنوان استدلال
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
--ساکت (-q)
فرمان را مجبور به چاپ نکردن چیزی می کند.
متفرقه دستورات
پچ-الگو [گزینه های] [نام وصله] [شرح]
چاپ یک الگوی شبه استاندارد dpatch اسکریپت، بر اساس اطلاعات ارائه شده در
خط فرمان. اگر یک شرح با توجه به آن، در حدود 72 کاراکتر تا می شود
چند خط به طور مناسب
هنگام آماده کردن الگو به STDIN، محتویات ورودی استاندارد خواهد بود
درست بعد از قالب چاپ می شود.
گزینه
-- آماده کردن (-پ)
قالب را به STDIN آماده کنید.
--کمک (-h)
یک پیام راهنمای کوتاه در مورد دستور چاپ کنید.
کمک (--کمک، -h) [فرمان]
سعی کنید در مورد خود dpatch یا در مورد یک داده کمک کمی دقیق تر ارائه دهید
دستور dpatch
نسخه
شماره نسخه dpatch را چاپ می کند و خارج می شود.
DPATCH IN دبیان بسته ها
دو روش مختلف برای استفاده از dpatch در وجود دارد دبیان/قوانین: تماس مستقیم با آن، یا
شامل dpatch.make(7). فقط روش اول در اینجا توضیح داده خواهد شد - دومی دارد
صفحه کتابچه راهنمای خودش
توجه داشته باشید: مثال های زیر نیز نیاز به اضافه کردن دارند غیر موازی پرچم به سر از
دبیان/قوانین از آنجایی که لیست های وابستگی به ترتیب اجرا متکی هستند. بدون
غیر موازی، ممکن است ترتیب اجرای آنها با چندین رشته ساخت اشتباه باشد (the -j
گزینه).
در اکثر مواقع، شخص می خواهد dpatch را به سرعت در طول فرآیند ساخت اجرا کند
ممکن است. اینکه چگونه می توان آن را انجام داد، به شدت به شرایط موجود بستگی دارد دبیان/قوانین.
با این حال، در عمل رایج، اکثر بسته ها دارای یک ساختن (و یا ساخت مهر), config.status، یا
پیکربندی (و یا پیکربندی-مهر) هدف. ساده ترین راه برای ایجاد dpatch در همان ابتدا
فقط باید یک قانون بنویسد که dpatch را فراخوانی کند و آن را به لیست اضافه کند
پیش نیازهای هدف مناسب (به بالا مراجعه کنید).
استفاده از dpatch می تواند آسان یا کمی مشکل تر باشد. اگر هیچ چیز در تمیز قانون لمس می کند
فایل های اصلاح شده توسط dpatches (ایجاد تغییرات ناسازگار)، می توانید با خیال راحت اضافه کنید پچ کردن به
لیستی از تمیز قوانین وابستگی
اگر وصله ها ممکن است روی سیستم ساخت اثر بگذارند، باید بعد از منبع اعمال شوند
درخت تمیز شده است برای انجام این کار، نام را تغییر دهید تمیز هدف قرار دادن، مثلا تمیز وصله شده، بنویسید a
قاعده ای که dpatch را فراخوانی می کند تا dpatch ها را اعمال کند و یک جدید ایجاد کند تمیز قانونی که دارد
تمیز وصله شده و پچ کردن به عنوان پیش نیازهای آن
بیایید به یک مثال نگاه کنیم! ابتدا اجازه دهید قسمت های مربوط به نسخه اصلی را بررسی کنیم
دبیان/قوانین بسته خیالی ما:
config.status: پیکربندی
./configure --prefix=/ usr --mandir=/ usr / سهم
ساخت: config.status
${MAKE}
تمیز:
$(testdir)
$ (تستروت)
${MAKE} distclean
rm -rf debian/debian-package debian/files debian/substvars
پس از dpatchify کردن، این شکل به نظر می رسد:
config.status: پچ پیکربندی
./configure --prefix=/ usr --mandir=/ usr / سهم
ساخت: config.status
${MAKE}
پاک: پاک وصله نشده بدون وصله
تمیز وصله شده:
$(testdir)
$ (تستروت)
${MAKE} distclean
rm -rf debian/debian-package debian/files debian/substvars
پچ: وصله مهر
مهر وصله:
dpatch application-all
dpatch cat-all >patch-stamp
unpatch:
dpatch deapply-all
rm -rf patch-stamp debian/patched
اضافه کردن dpatch نسخه های خطی به a بسته
هنگام استفاده از dpatch، مطمئناً می خواهید به سیستم بگویید که چه dpatch هایی را اعمال کند و کدام
آنهایی که باید دور ریختن در رایج ترین شرایط، فقط باید نام آن ها را فهرست کرد
dpatches (نام فایل ها نسبت به دبیان/پچ ها) که در debian/patches/00list. آنها
معمولا پسوند دارند dpatch و پسوند را می توان حذف کرد، بنابراین یک فایل
debian/patches/01_one_patch.dpatch به عنوان نوشته شده است 01_one_patch داخل debian/patches/00list
با این حال، ممکن است شرایطی وجود داشته باشد که به چیزی انعطافپذیرتر مانند درخواست نیاز باشد
وصله یکسان فقط در دو معماری، مثلاً، M68K و پاور پی سی. یکی این را در در حل کند
حداقل دو روش بسیار متفاوت: یکی این است که یک پچ را در هر دو فهرست کنید
debian/patches/00list.m68k و debian/patches/00list.powerpc، دیگری استفاده است
DPATCH_OPTION_CPP=1 in debian/patches/00options. فایل 00list از طریق ارسال می شود cpp
فرمان با DEB_BUILD_ARCH مجموعه متغیر به معماری، و
DEB_BUILD_ARCH_معماری در حال تنظیم روی 1. با cpp، نمونه ما debian/patches/00list
ممکن است به این شکل باشد:
01_manpage_pop
#if defined(DEB_BUILD_ARCH_m68k) || تعریف شده (DEB_BUILD_ARCH_powerpc)
/* این پچ یک شکست تصادفی در زمان ساخت را در جعبه مکینتاش برطرف می کند. */
02_macintosh_foo
# اندیف
ایجاد dpatch نسخه های خطی
راه های زیادی برای ایجاد اسکریپت های dpatch وجود دارد. آنها فایل های ساده و قابل اجرا هستند که
از یک قرارداد استاندارد تماس پیروی کنید (مستند شده در dpatch(7).
می توانید $EDITOR خود را فعال کنید یا از آن استفاده کنید dpatch-edit-patch، و شما باید آماده باشید.
برای اکثر موارد، جایی که فایل dpatch فقط برای اعمال یک پچ ساده است، یک زوج وجود دارد
راه ساده تر:
dpatch patch-template -p "01_some_patch" "یک وصله تصادفی" \
debian/patches/01_some_patch.dpatch
با استفاده از خدمات onworks.net از dpatch آنلاین استفاده کنید