Skip to content

Latest commit

 

History

History
119 lines (86 loc) · 5.05 KB

File metadata and controls

119 lines (86 loc) · 5.05 KB

📚 فرهنگ لغات Git

تعریف‌های ساده، دقیق و قابل استفاده در Workflow واقعی

Glossary Language

[!TIP] این فایل Dictionary نیست؛ هدفش این است که وقتی اصطلاحی در Mission دیدی، سریع مدل ذهنی درست آن را بازیابی کنی.

اصطلاح تعریف ساده
Repository پوشه‌ای که Git تاریخچه‌ی تغییراتش را دنبال می‌کند
Local Repository نسخه‌ی Git روی سیستم خودت
Remote Repository نسخه‌ی Repository روی سرویس‌هایی مثل GitHub/GitLab
Origin نام رایج Remote اصلی
Working Directory فایل‌هایی که الان در حال ویرایش‌شان هستی
Staging Area محل انتخاب تغییراتی که قرار است Commit شوند
Commit یک Snapshot معنی‌دار از تغییرات انتخاب‌شده
Commit Hash شناسه‌ی یکتای Commit
Branch مسیر مستقل برای توسعه‌ی یک تغییر
Main شاخه‌ی اصلی و معمولاً پایدار پروژه
Push فرستادن Commitهای Local به Remote
Fetch گرفتن اطلاعات جدید Remote بدون ادغام خودکار در Branch فعلی
Pull دریافت تغییرات Remote و تلاش برای ادغام با Branch فعلی
Pull Request درخواست بررسی و ادغام تغییرات یک Branch به Branch دیگر
Merge ترکیب تاریخچه یا تغییرات دو Branch
Conflict موقعیتی که Git برای ترکیب تغییرات نیاز به تصمیم انسان دارد
Revert ساخت Commit جدید برای خنثی‌کردن اثر Commit قبلی

🧠 چهار اصطلاحی که نباید با هم قاطی شوند

Working Directory → چیزی که ویرایش کرده‌ای
Staging Area      → چیزی که برای Commit انتخاب کرده‌ای
Local Repository  → Commitهایی که روی سیستم تو ثبت شده‌اند
Remote Repository → History منتشرشده روی Server

🔍 چند نکته‌ی ظریف

origin

origin اسم جادویی یا اجباری نیست؛ فقط نام رایجی است که Git هنگام Clone برای Remote اصلی می‌سازد.

Commit

Commit صرفاً «نسخه‌ی فایل» نیست. بهتر است آن را یک Snapshot از وضعیت Track‌شده‌ی پروژه به همراه Metadata و ارتباط تاریخی تصور کنی.

Branch

Branch را مثل «کپی کامل پروژه» تصور نکن. در مدل Git، Branch در اصل یک Reference سبک به یک Commit است که با Commitهای جدید حرکت می‌کند.

HEAD

HEAD معمولاً نشان می‌دهد الان روی کدام Branch / Commit قرار داری.

HEAD
 ↓
main
 ↓
A ── B ── C

Pull Request

Pull Request خودش دستور Git نیست. یک Workflow در پلتفرم‌هایی مثل GitHub/GitLab برای Review، Discussion و Merge کردن تغییرات است.


🧩 اگر فقط یک تصویر یادت بماند

files
  ↓
working tree
  ↓ select
staging area
  ↓ snapshot
commit
  ↓ publish
remote

 ██████╗██╗   ██╗██████╗ ███████╗██████╗ ███╗   ██╗██╗████████╗██╗  ██╗
██╔════╝╚██╗ ██╔╝██╔══██╗██╔════╝██╔══██╗████╗  ██║██║╚══██╔══╝██║  ██║
██║      ╚████╔╝ ██████╔╝█████╗  ██████╔╝██╔██╗ ██║██║   ██║   ███████║
██║       ╚██╔╝  ██╔══██╗██╔══╝  ██╔══██╗██║╚██╗██║██║   ██║   ██╔══██║
╚██████╗   ██║   ██████╔╝███████╗██║  ██║██║ ╚████║██║   ██║   ██║  ██║
 ╚═════╝   ╚═╝   ╚═════╝ ╚══════╝╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝   ╚═╝   ╚═╝  ╚═╝

C Y B E R N I T H

Crafted & maintained by Soroosh Morshedi
🌐 sorooshmorshedi.ir · Instagram @cybernith · LinkedIn sorooshMorshedi

Built with curiosity, discipline, and a suspiciously large amount of Git history.