RCSMERGE(1) General Commands Manual RCSMERGE(1)

rcsmerge - ادغام بازبینی‌های RCS

rcsmerge [گزینه‌ها] فایل

دستور rcsmerge تغییرات میان دو بازبینی از یک فایل RCS را در فایل کاری متناظر ادغام می‌کند.

نام‌های فایلی که با یک پسوند RCS مطابقت دارند، نشان‌دهندهٔ فایل‌های RCS هستند؛ دیگر نام‌ها نشان‌دهندهٔ فایل‌های کاری می‌باشند. جفت‌سازی نام‌ها همان‌گونه که در ci(1) شرح داده شده، انجام می‌شود.

حداقل یک بازبینی باید با یکی از گزینه‌هایی که در ادامه شرح داده شده (معمولاً -r) مشخص شود. حداکثر دو بازبینی را می‌توان مشخص کرد. اگر تنها یک بازبینی مشخص شود، آخرین بازبینی روی شاخهٔ پیش‌فرض (معمولاً بالاترین شاخه روی تنهٔ اصلی یا trunk) برای بازبینی دوم در نظر گرفته می‌شود. بازبینی‌ها را می‌توان به‌صورت عددی یا نمادین مشخص کرد.

در صورت وجود تداخل، rcsmerge یک هشدار چاپ کرده و نواحی دارای هم‌پوشانی را همان‌طور که در merge(1) شرح داده شده است، مشخص و علامت‌گذاری می‌کند. این دستور برای اعمال تغییرات در یک بازبینی دریافت‌شده (checked-out) مفید است.

نمایش تداخل‌ها با استفاده از سبک -A دستور diff3(1)، در صورتی که توسط diff3 پشتیبانی شود. این کار تمامی تغییراتی را که از file2 به file3 منتهی می‌شوند در file1 ادغام کرده و پرجزئیات‌ترین خروجی را تولید می‌کند.
این گزینه‌ها سبک‌های تداخلی را مشخص می‌کنند که اطلاعات کمتری نسبت به -A تولید می‌نمایند. برای جزئیات بیشتر به diff3(1) مراجعه کنید. حالت پیش‌فرض -E است. با گزینهٔ -e، دستور rcsmerge دربارهٔ تداخل‌ها هشداری نمی‌دهد.
استفاده از سبک subst برای جایگزینی کلیدواژه‌ها. برای جزئیات به co(1) مراجعه کنید. برای نمونه، -kk -r1.1 -r1.2 هنگام ادغام تغییرات از 1.1 به 1.2، تفاوت مقادیر کلیدواژه‌ها را نادیده می‌گیرد. معمولاً ادغام فایل‌های باینری به گونه‌ای که گویا متنی هستند، کار درستی نیست؛ بنابراین در صورت استفاده از بسط -kb، دستور rcsmerge از ادغام فایل‌ها خودداری می‌کند.
ارسال نتیجه به خروجی استاندارد به جای بازنویسی روی فایل کاری.
اجرای بی‌صدا؛ پیام‌های عیب‌یابی چاپ نمی‌شوند.
ادغام با توجه به بازبینی rev. در اینجا خالی بودن rev به معنای آخرین بازبینی روی شاخهٔ پیش‌فرض (معمولاً head) است.
این گزینه هیچ تأثیری ندارد؛ صرفاً برای سازگاری با سایر دستورهای RCS وجود دارد.
چاپ شماره نسخهٔ RCS.
شبیه‌سازی نسخهٔ n از RCS. برای جزئیات به co(1) مراجعه کنید.
استفاده از suffixes برای مشخص کردن فایل‌های RCS. برای جزئیات به ci(1) مراجعه کنید.
استفاده از zone به عنوان منطقهٔ زمانی برای جایگزینی کلیدواژه‌ها. برای جزئیات به co(1) مراجعه کنید.

فرض کنید بازبینی 2.8 از f.c را منتشر کرده‌اید. علاوه بر این فرض کنید پس از تکمیل بازبینی منتشرنشدهٔ 3.4، به‌روزرسانی‌هایی را برای نسخهٔ 2.8 از فرد دیگری دریافت می‌کنید. برای ترکیب به‌روزرسانی‌های 2.8 و تغییرات خود میان 2.8 و 3.4، به‌روزرسانی‌های مربوط به 2.8 را در فایل f.c قرار داده و دستور زیر را اجرا کنید:

rcsmerge -p -r2.8 -r3.4 f.c >f.merged.c

سپس f.merged.c را بررسی کنید. همچنین، اگر می‌خواهید به‌روزرسانی‌های 2.8 را در فایل RCS ذخیره کنید، آن‌ها را به عنوان بازبینی 2.8.1.1 ثبت (check in) کرده و دستور co -j را اجرا نمایید:

ci -r2.8.1.1 f.c
co -r3.4 -j2.8:2.8.1.1 f.c

به عنوان مثالی دیگر، دستور زیر تغییرات میان بازبینی 2.4 و 2.8 را در بازبینی در حال حاضر دریافت‌شدهٔ شما در f.c لغو (undo) می‌کند.

rcsmerge -r2.8 -r2.4 f.c

به ترتیب آرگومان‌ها و این نکته که f.c بازنویسی خواهد شد، توجه داشته باشید.

گزینه‌هایی که به ابتدای فهرست آرگومان‌ها افزوده شده و با فاصله از هم جدا می‌شوند. یک بک‌اسلش فاصله‌های درون یک گزینه را گریزدهی (escape) می‌کند. گزینه‌های RCSINIT به ابتدای فهرست آرگومان‌های بیشتر دستورهای RCS اضافه می‌شوند. گزینه‌های مفید RCSINIT شامل -q، -V، -x و -z هستند.
به طور معمول برای سرعت بیشتر، در صورتی که اندازهٔ فایل RCS کمتر از memory-limit باشد، دستورها آن را در حافظه نگاشت (memory map) کرده یا درون حافظه کپی می‌کنند؛ این مقدار در حال حاضر به طور پیش‌فرض “unlimited” (نامحدود) است. در غیر این صورت (یا در صورتی که روش‌های سریع اولیه با شکست مواجه شوند)، دستورها به استفاده از روال‌های ورودی/خروجی استاندارد بازمی‌گردند. می‌توانید با تنظیم RCS_MEM_LIMIT روی یک مقدار عددی lim (برحسب کیلوبایت)، حد حافظه را تغییر دهید. مقدار خالی بدون هشدار نادیده گرفته می‌شود. به عنوان یک اثر جانبی، مشخص کردن RCS_MEM_LIMIT از بازگشت به روال‌های کندتر جلوگیری می‌کند.
نام دایرکتوری موقت. در صورت تنظیم نشدن، متغیرهای محیطی TMP و TEMP به جای آن بررسی شده و اولین مقدار یافت‌شده استفاده می‌شود؛ اگر هیچ‌یک از آن‌ها تنظیم نشده باشند، یک مقدار پیش‌فرض وابسته به میزبان به کار می‌رود که معمولاً /tmp است.

وضعیت خروج در صورت نبود هیچ هم‌پوشانی 0، برای مقداری هم‌پوشانی 1، و در صورت بروز مشکل 2 است.

نویسنده: Walter F. Tichy.
بازبینی صفحهٔ راهنما: 5.10.1؛ تاریخ انتشار: 2022-02-03.
کپی‌رایت © 2010-2022 Thien-Thi Nguyen.
کپی‌رایت © 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert.
کپی‌رایت © 1982, 1988, 1989 Walter F. Tichy.

ci(1), co(1), ident(1), merge(1), rcs(1), rcsdiff(1), rlog(1), rcsfile(5).

Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.

مستندات کامل برای RCS به صورت یک راهنمای Texinfo نگهداری می‌شود. اگر برنامه‌های info(1) و RCS به درستی روی سامانهٔ شما نصب شده باشند، دستور

info rcs

باید دسترسی به راهنمای کامل را برای شما فراهم کند. علاوه بر این، صفحهٔ خانگی RCS:

http://www.gnu.org/software/rcs

شامل اخبار و پیوندهایی به آخرین نسخه، پایگاه توسعه و غیره است.

2022-02-03 GNU RCS 5.10.1