پوشه .git - ساختار داخلی پوشه .git قلب هر مخزن گیت است و شامل تمام متادیتا و دادههای لازم برای کنترل نسخه میباشد. ساختار...
اشیاء Git - جزئیات گیت چهار نوع شیء اصلی دارد که تمام محتوا از آنها ساخته شده است: Blob : محتوای خام فایل را ذخیره م...
شیء Blob - محتوای فایل Blob فقط داده خام فایل را ذخیره میکند (متنی یا باینری). هیچ متادیتایی ذخیره نمیشود: نام فا...
شیء Tree - اسنپشات پوشه Tree نماینده یک دایرکتوری است. شامل ورودیهایی است که به blob یا tree های دیگر اشاره میکن...
Tree ها به blob ها اشاره میکنند تا فایلها را در پوشهها نشان دهند Tree ها میتوانند به tree های دیگر برای زیرپوشهها اشاره کنند ...
یک commit اسنپشاتی از مخزن ذخیره میکند به یک شیء tree اشاره دارد که وضعیت فایلها و پوشهها را نشان میدهد شامل متادیتا: نویسنده...
کامیتها یک گراف جهتدار بدون حلقه (DAG) تشکیل میدهند هر گره یک commit است و یالها به commit والد اشاره میکنند امکان branching ...
هر commit به یک tree ریشه اشاره دارد که به صورت بازگشتی تمام فایلها و پوشهها را نشان میدهد Tree ها به blob ها یا tree های دیگر اشا...
تگها اشارهگرهای نامدار به کامیتها هستند تگ سبک: اشارهگر ساده به یک کامیت تگ Annotated: شیء کامل شامل اطلاعات تگگذار، تاریخ، ...
HEAD به شاخه یا کامیت جاری اشاره میکند معمولاً به رفرنس شاخه اشاره میکند: refs/heads/main Detached HEAD: اشاره مستقیم به SHA یک ...
شاخهها اشارهگرهای متحرک به کامیتها هستند در مسیر .git/refs/heads/ ذخیره میشوند شاخه پیشفرض معمولاً 'main' یا 'master' است ...
HEAD به نوک شاخه جاری اشاره میکند جابهجایی HEAD به شاخه جدید، Working Tree را با آخرین کامیت آن شاخه هماهنگ میکند مثال: ...
Working Tree نسخه چکاوتشده مخزن روی دیسک است شامل فایلهایی است که میتوانید مستقیماً ویرایش کنید تغییرات تا وقتی staged و commi...
ایندکس (Staging Area) یک ساختار میانی بین Working Tree و Repository است مشخص میکند کدام تغییرات وارد کامیت بعدی شوند با git add ف...
گیت فایلها را در سه حالت پیگیری میکند: تغییر یافته، ایندکس شده، کامیت شده درک این جریان کاری برای تسلط بر گیت حیاتی است مثال...
Refs اشارهگرهایی به کامیتها هستند که در .git/refs ذخیره میشوند انواع: heads (شاخهها)، tags، remotes گیت از refs برای تبدیل نام...
HEAD به شاخه یا کامیت جاری اشاره میکند معمولاً: HEAD → refs/heads/main Detached HEAD: اشاره مستقیم به SHA یک کامیت HEAD مشخص م...
ریپازیتوری bare فقط شامل پوشه .git است و Working Tree ندارد معمولاً بهعنوان ریپازیتوری ریموت برای اشتراکگذاری استفاده میشود امک...
.gitignore الگوهایی از فایلها را مشخص میکند که نباید ردیابی شوند فایلهای نادیده گرفته شده در Working Tree هستند اما staged و commi...
.gitattributes رفتار مخزن را برای مسیرهای خاص کنترل میکند قابلیتها: نرمالسازی انتهای خط، درایور diff/merge سفارشی، تنظیمات export،...