GIT-MERGE-TREE(1) دستورات عمومی کاربر GIT-MERGE-TREE(1) نام (NAME) git-merge-tree - انجام ادغام بدون دستکاری ایندکس یا درخت کاری خلاصه دستور (SYNOPSIS) git merge-tree [--write-tree] [] git merge-tree [--trivial-merge] (منسوخ‌شده) توضیحات (DESCRIPTION) این دستور دارای یک حالت مدرن --write-tree و یک حالت منسوخ‌شده --trivial-merge است. به استثنای بخش «توضیحات منسوخ‌شده» در انتها، بقیه این مستندات حالت مدرن --write-tree را شرح می‌دهد. یک ادغام را انجام می‌دهد، اما هیچ کامیت جدیدی ایجاد نمی‌کند و در درخت کاری یا ایندکس چیزی نمی‌خواند یا نمی‌نویسد. ادغام انجام‌شده از همان قابلیت‌های دستور «واقعی» git-merge(1) استفاده خواهد کرد، از جمله: • ادغام‌های سه‌طرفه محتوای فایل‌های جداگانه • تشخیص تغییر نام • مدیریت مناسب تداخل‌های پوشه/فایل • تثبیت بازگشتی نیاکان (یعنی زمانی که بیش از یک پایه ادغام وجود دارد، ایجاد یک پایه ادغام مجازی با ادغام پایه‌های ادغام) • و غیره. پس از اتمام ادغام، یک شیء درخت ریشه (toplevel tree) جدید ایجاد می‌شود. برای جزئیات به بخش خروجی (OUTPUT) در زیر مراجعه کنید. گزینه‌ها (OPTIONS) --stdin خواندن کامیت‌های مورد نظر برای ادغام از ورودی استاندارد به‌جای خط فرمان. برای اطلاعات بیشتر به قالب ورودی در زیر مراجعه کنید. مستلزم -z است. -z عدم نقل‌قول نام فایل‌ها در بخش <اطلاعات فایل‌های متداخل>، و خاتمه دادن به هر نام فایل با یک نویسه NUL به‌جای خط جدید. همچنین شروع بخش پیام‌ها با یک نویسه NUL به‌جای خط جدید. برای اطلاعات بیشتر به خروجی در زیر مراجعه کنید. --name-only در بخش اطلاعات فایل‌های متداخل، به‌جای نوشتن فهرستی از چندتایی‌های (mode, oid, stage, path) در خروجی برای فایل‌های دارای تداخل، صرفاً فهرستی از نام‌های فایل‌های دارای تداخل را ارائه می‌دهد (و نام فایل‌ها را در صورت داشتن چندین مرحله متداخل، چند بار تکرار نمی‌کند). --messages, --no-messages نوشتن هرگونه پیام‌های اطلاع‌رسانی مانند "Auto-merging " یا اعلان‌های CONFLICT در انتهای خروجی استاندارد (stdout). در صورت عدم تعیین، پیش‌فرض این است که این پیام‌ها در صورت وجود تداخل‌های ادغام گنجانده شوند و در غیر این صورت حذف گردند. --quiet غیرفعال کردن تمام خروجی‌های برنامه. زمانی مفید است که فقط به وضعیت خروج علاقه‌مند هستید. به merge-tree اجازه می‌دهد زمانی که تداخلی پیدا کرد زودتر خارج شود، و از نوشتن بیشتر اشیاء ایجادشده توسط ادغام‌ها جلوگیری کند. --allow-unrelated-histories دستور merge-tree به‌طور پیش‌فرض در صورتی که دو شاخه مشخص‌شده هیچ تاریخچه مشترکی نداشته باشند با خطا متوقف می‌شود. این فلگ می‌تواند برای نادیده گرفتن این بررسی و ادامه فرآیند ادغام در هر صورت استفاده شود. --merge-base= به‌جای یافتن پایه‌های ادغام برای و ، یک پایه ادغام را برای این ادغام مشخص می‌کند. این گزینه با --stdin ناسازگار است. تعیین چندین پایه در حال حاضر پشتیبانی نمی‌شود، به این معنی که هنگام ادغام دو شاخه با بیش از یک پایه ادغام، استفاده از این گزینه ممکن است باعث شود نتایج ادغام با آنچه git merge محاسبه می‌کند متفاوت باشد. این می‌تواند شامل از دست رفتن احتمالی برخی از تغییرات ایجادشده در یک سمت از تاریخچه در ادغام نهایی باشد. با این گزینه، از آنجا که پایه ادغام مستقیماً ارائه می‌شود، نیازی نیست و کامیت‌ها را مشخص کنند؛ درخت‌ها کافی هستند. -X