FLATPAK BUILD-COMMI(1) flatpak build-commit-from FLATPAK BUILD-COMMI(1)

flatpak-build-commit-from - ایجاد کامیت‌های جدید بر اساس یک کامیت موجود (احتمالاً از مخزنی دیگر)

flatpak build-commit-from [OPTION...] DST-REPO DST-REF...

کامیت‌های جدیدی را روی شاخهٔ DST-REF در مخزن مقصد DST-REPO ایجاد می‌کند، به‌طوری‌که محتویات (و بیشتر فراداده‌ها) از شاخهٔ دیگری گرفته می‌شوند؛ این شاخه می‌تواند از مخزنی دیگر باشد یا از شاخه‌ای دیگر درون همان مخزن.

شناسهٔ مجموعه (collection ID) تنظیم‌شده روی DST-REPO (در صورت تنظیم بودن) برای کامیت‌های جدید استفاده خواهد شد.

این دستور زمانی بسیار کاربردی است که می‌خواهید شاخه‌ای با تاریخچهٔ تمیز و عاری از کامیت‌های امضانشده یا ناقص را نگهداری کنید. برای نمونه، می‌توانید پس از اطمینان از عملکرد صحیح خروجی یک سیستم ساخت خودکار (autobuilder)، کامیت سرشاخه (head) را از مخزن آن وارد کنید. کامیت جدید فاقد والدین یا امضاهای سازندهٔ خودکار خواهد بود و می‌تواند به‌درستی با کلید رسمی امضا شود.

هرگونه دلتایی که بر کامیت اصلی تأثیر می‌گذارد و با کامیت‌های والد در مخزن مقصد همخوانی دارد، کپی شده و برای شناسهٔ کامیت جدید بازنویسی می‌شود.

گزینه‌های زیر پشتیبانی می‌شوند:

-h, --help

نمایش گزینه‌های راهنما و خروج.

--src-repo=SRC-REPO

مخزن (محلی) مبدا که شاخهٔ مبدا از آن دریافت می‌شود. مقدار پیش‌فرض، مخزن مقصد است.

--src-ref=SRC-REF

شاخه‌ای که به‌عنوان مبدا برای کامیت جدید استفاده می‌شود. به‌طور پیش‌فرض همان مرجع مقصد (destination ref) است، که تنها در صورت تعیین مخزن مبدا متفاوت کاربرد دارد.

--extra-collection-id=COLLECTION-ID

افزودن یک پیوند اضافی collection-ref برای این مجموعه، علاوه بر مواردی که معمولاً به‌واسطهٔ شناسهٔ مجموعهٔ مخزن مقصد اضافه می‌شوند. این گزینه می‌تواند چندین بار استفاده شود.

--subset=SUBSET

علامت‌گذاری کامیت جهت قرارگیری در زیرمجموعهٔ نام‌گذاری‌شده. این کار باعث می‌شود کامیت علاوه بر خلاصه‌وضعیت اصلی، در خلاصه‌وضعیت زیرمجموعهٔ مشخص‌شده نیز قرار گیرد و به کاربران اجازه می‌دهد به‌جای کل مخزن، تنها این زیرمجموعه را مشاهده کنند.

--untrusted

مخزن مبدا غیرقابل‌اعتماد در نظر گرفته می‌شود؛ تمام اشیاء کپی می‌شوند (نه پیوند سخت) و تمام چکسام‌ها اعتبارسنجی می‌شوند.

-s, --subject=SUBJECT

موضوع یک‌خطی برای پیام کامیت. اگر مشخص نشود، از کامیت مبدا گرفته خواهد شد.

-b, --body=BODY

توضیحات کامل برای پیام کامیت. اگر مشخص نشود، از کامیت مبدا گرفته خواهد شد.

--update-appstream

به‌روزرسانی شاخهٔ appstream پس از ساخت.

--no-update-summary

عدم به‌روزرسانی فایل خلاصه‌وضعیت (summary) پس از افزودن کامیت جدید. این بدان معناست که مخزن تا زمان اجرای build-update-repo برای ارائه از طریق http مناسب نخواهد بود. این گزینه زمانی مفید است که می‌خواهید چندین عملیات روی مخزن انجام دهید و سپس خلاصه‌وضعیت را به‌روزرسانی نمایید.

--force

ایجاد کامیت جدید حتی در صورتی که محتوا نسبت به سرشاخهٔ فعلی تغییری نکرده باشد.

--disable-fsync

عدم استفاده از fsync هنگام نوشتن در مخزن. این گزینه ممکن است در شرایط استثنایی منجر به از دست رفتن داده‌ها شود، اما کارایی را هنگام کار با مخازن موقت یا آزمایشی بهبود می‌بخشد.

--gpg-sign=KEYID

امضای کامیت با این کلید GPG. این گزینه می‌تواند چندین بار استفاده شود.

--gpg-homedir=PATH

مسیر دایرکتوری خانگی GPG جهت جستجوی دسته‌کلیدها (keyrings).

--end-of-life=REASON

علامت‌گذاری ساخت به‌عنوان پایان‌یافته (end-of-life).

--end-of-life-rebase=OLDID=NEWID

علامت‌گذاری مراجع جدید به‌عنوان پایان‌یافته. بر خلاف --end-of-life، این گزینه شناسه‌ای را می‌پذیرد که جایگزین شناسهٔ فعلی می‌شود. بنا به درخواست کاربر، داده‌های برنامه ممکن است برای برنامهٔ جدید حفظ شوند. توجه داشته باشید که این تطبیق در واقع به‌صورت پیشوندی (prefix match) است؛ بنابراین اگر بنویسید org.the.app=org.new.app، آنگاه موردی مانند org.the.app.Locale به org.new.app.Locale بازپایه‌ریزی (rebase) خواهد شد.

--timestamp=TIMESTAMP

بازنویسی برچسب زمانی کامیت. از یک تاریخ با قالب ISO 8601 یا NOW برای زمان جاری استفاده کنید.

--disable-fsync

عدم استفاده از fsync هنگام نوشتن در مخزن. این گزینه ممکن است در شرایط استثنایی منجر به از دست رفتن داده‌ها شود، اما کارایی را هنگام کار با مخازن موقت یا آزمایشی بهبود می‌بخشد.

-v, --verbose

چاپ اطلاعات اشکال‌زدایی در طول پردازش دستور.

--ostree-verbose

چاپ اطلاعات اشکال‌زدایی OSTree در طول پردازش دستور.

برای بازگردانی یک کامیت به کامیت پیشین:

$ flatpak build-commit-from --timestamp=NOW --src-ref=app/org.gnome.gedit/x86_64/master^ repo app/org.gnome.gedit/x86_64/master

ostree(1), flatpak(1), flatpak-build-init(1), flatpak-build(1), flatpak-build-finish(1), flatpak-build-sign(1), flatpak-build-update-repo(1)

flatpak