شما می توانید هر commit را در یک شاخه برای ایجاد یک شاخه جدید از آن commit منبع انتخاب کنید . این یک دنباله جدید از commit ها را شروع می کند که به موازات دنباله اول اجرا می شود. هنگامی که شعبه ایجاد می شود، مجموعه نسخه ها و تگ های اختصاص داده شده در commit منبع و در شاخه جدید یکسان خواهند بود. اما به محض اینکه شروع به ذخیره نسخه های جدید و تخصیص مجدد برچسب ها کنید، شاخه ها از هم جدا می شوند. برای نمایش شماتیک شکل 4-1 را ببینید که ادامه شکل 2-2 است.
![]() | شعبه به عنوان دنباله ای از تعهدات |
![]() |
|
یک تصویر ذهنی خوب این است که به درختی فکر کنید که در آن شاخه اولیه تنه درخت است، با یک commit اولیه در پایه تنه (در زمین)، و commit های متوالی که روی هم قرار گرفته اند. شاخه های دیگر ایجاد شده از شاخه اصلی مربوط به شاخه های درخت است که از تنه بیرون می زند. مخزن را می توان به عنوان خود درخت در نظر گرفت.

شکل 4-1: نمایش شماتیک یک مخزن حاوی دو شاخه. شعبه دوم از commit دوم شاخه اصلی ایجاد شده است. در کامیت سوم در شاخه اصلی، مدل A حذف شد. در کامیت دوم شعبه جدید، نسخه جدیدی از مدل A ذخیره شد. مرور آخرین نسخه ها در شعبه اصلی، نسخه های مدل B 3 و C 1 را برمی گرداند . مرور در شعبه جدید A 3 و B 1 را برمی گرداند .
برای ایجاد یک شاخه از یک منبع خاص، یکی از موارد زیر را انجام دهید:
• | یک گره شاخه ( ![]() ![]() |
• | یک گره عکس فوری ( ![]() ![]() |
• | یک ردیف جدول commit را در پنجره Commits انتخاب کنید و روی دکمه Branch ( ![]() |
در همه موارد، کادر گفتگوی Create Branch باز می شود.
![]() | ایجاد یک شعبه جدید یک عملیات نسبتاً ارزان در پایگاه داده Model Manager از نظر ذخیره سازی واقعی داده است. هیچ داده ای کپی نمی شود به جز مقدار کمی از ابرداده لازم برای تعیین اینکه کدام موارد در ابتدا در شعبه وجود دارد. با این حال، اگر یک فهرست جستجو برای شعبه ایجاد شود، هزینه ای از نظر استفاده از فضای دیسک وجود دارد – همچنین به جستجو در شاخه ها مراجعه کنید . |
شاخه های جزئی
می توانید یک شاخه جزئی ایجاد کنید که شامل زیرمجموعه ای از همه موارد موجود در commit منبع باشد. مدل ها و فایل ها را در The Databases Tree یا The Model Manager Window انتخاب کنید تا آن موارد را در شاخه جدید قرار دهید. برچسب ها را انتخاب کنید تا همه مواردی که توسط برچسب انتخاب شده برچسب گذاری شده اند را شامل شود. تمام تخصیص تگ های موجود در commit منبع در شاخه جدید نیز منعکس خواهند شد.
کادر گفتگوی ایجاد شعبه
شما شاخه جدید را از کادر محاوره ای Create Branch ایجاد می کنید . فیلد Database پایگاه داده ای را نشان می دهد که شعبه در آن ایجاد شده است و فیلد Repository مخزنی را نشان می دهد که منبع commit و شاخه جدید هر دو به آن تعلق دارند.
1 | نام شاخه جدید را در قسمت Name بنویسید . |
2 | یک نظر اختیاری برای commit اولیه که برای شاخه جدید ایجاد می شود در قسمت نظرات بنویسید . |
3 | برای جستجوی کامل و پشتیبانی فیلتر در شعبه جدید، فیلدها و محتوای مورد را در لیست جستجو انتخاب کنید . در غیر این صورت، فقط متن و برچسبها را انتخاب کنید – همچنین به جستجو در شاخهها مراجعه کنید . |
4 | در لیست انتخاب : |
– | همه را انتخاب کنید تا همه موارد از commit منبع گنجانده شود. |
– | انتخاب فعلی را انتخاب کنید تا فقط مواردی را که نسخههای آنها هنگام باز شدن کادر محاورهای انتخاب شدهاند را شامل شود. نسخه های مورد انتخاب شده در جدولی در زیر فیلد انتخاب نمایش داده می شوند . یک ردیف جدول را انتخاب کنید و روی دکمه Exclude ( ![]() |
– | برای ایجاد شاخه ای که اصلاً شامل موارد اولیه نمی شود، Empty را انتخاب کنید . |
5 | می توانید مجوزهای شعبه جدید را در قسمت Permissions تنظیم کنید . این فیلد فقط در صورتی نشان داده می شود که از طریق سرور Model Manager به پایگاه داده سرور متصل باشد. به اعطای مجوزها مراجعه کنید . |
6 | برای ایجاد شعبه جدید در پایگاه داده روی OK کلیک کنید . |
شاخه ایجاد شده به عنوان یک گره فرزند جدید برای گره Branches در درخت پایگاه داده ظاهر می شود .
![]() | برای مثال، اگر فقط قصد ایجاد مدلهای جدید روی شاخه را دارید، یک شاخه خالی مفید است. بعداً می توانید این مدل ها را در شاخه منبع ادغام کنید. |
![]() | یک تعهد اولیه همیشه در یک شاخه جدید انجام می شود. اگر The Commit Details Dialog Box را برای این commit باز کنید ، می بینید که جدول Changes خالی است – هیچ نسخه یا تخصیص جدیدی در پایگاه داده در آن commit اولیه ذخیره نمی شود. |