آموزش گیت (Git) برای مبتدیان: راهنمای کامل گامبهگام
نویسنده: تیم آرنا
اگر تازه وارد دنیای برنامهنویسی شدهای، گیت (Git) یکی از اولین و مهمترین ابزارهایی است که باید یاد بگیری. در این مقاله گیت را از صفر، بدون پیشنیاز، و با مثالهای عملی یاد میگیری.
گیت چیست؟
گیت یک سیستم کنترل نسخه (Version Control System) است. یعنی تغییرات فایلهای پروژهات را در طول زمان ثبت میکند تا بتوانی:
- به هر نسخهٔ قبلی برگردی
- ببینی چه کسی، کِی و چرا چیزی را تغییر داده
- همزمان با تیم روی یک پروژه کار کنی بدون اینکه کار هم را خراب کنید
گیت توزیعشده است؛ یعنی هر کسی یک کپی کامل از کل تاریخچهٔ پروژه را روی سیستم خودش دارد و آفلاین هم کار میکند.
چرا گیت اینقدر مهم است؟
امروزه تقریباً تمام شرکتهای نرمافزاری از گیت استفاده میکنند. بدون آن، همکاری تیمی تقریباً غیرممکن است. علاوه بر این:
- جلوی ازدسترفتن کد را میگیرد
- آزمایش ایدههای جدید را بیخطر میکند (با شاخهها)
- رزومهٔ هر توسعهدهنده با پروفایل گیتهاب سنجیده میشود
نصب و پیکربندی اولیه
ابتدا بررسی کن گیت نصب است یا نه:
git --version
اگر نصب نبود، از git-scm.com دانلودش کن. سپس نام و ایمیلت را تنظیم کن (روی هر commit ثبت میشود):
git config --global user.name "نام تو"
git config --global user.email "you@example.com"
اولین مخزن و اولین commit
در پوشهٔ پروژه:
git init # ساخت مخزن
git add . # افزودن فایلها به ناحیهٔ stage
git commit -m "اولین commit"
گیت سه ناحیهٔ اصلی دارد:
| ناحیه | توضیح |
|---|---|
| Working Directory | فایلهای واقعی تو |
| Staging Area | فایلهای آمادهٔ commit |
| Repository | تاریخچهٔ commitها |
همیشه وضعیت را با این دستور ببین:
git status
شاخهها (Branch): قدرت واقعی گیت
شاخه یک خط توسعهٔ مستقل است. با آن میتوانی روی یک قابلیت جدید کار کنی بدون دستزدن به شاخهٔ اصلی (main):
git switch -c feature-login # ساخت و رفتن روی شاخهٔ جدید
git switch main # بازگشت به شاخهٔ اصلی
git merge feature-login # ادغام تغییرات
اگر همان خطها در دو شاخه تغییر کرده باشند، تعارض (conflict) رخ میدهد که باید دستی حلش کنی. تعارض ترسناک نیست؛ فقط یعنی گیت از تو میخواهد تصمیم نهایی را بگیری.
کار با گیتهاب
گیتهاب میزبانی آنلاین برای مخازن گیت است. برای فرستادن کد به گیتهاب:
git remote add origin https://github.com/user/repo.git
git push -u origin main
اشتباهات رایج مبتدیان
- commitهای بزرگ و مبهم: هر commit باید یک تغییر منطقی و کامل باشد با پیامی که چرایی را توضیح میدهد.
- commitکردن فایلهای حساس: از
.gitignoreبرای نادیدهگرفتن.env،node_modulesو … استفاده کن. - ترس از شاخه: شاخهبندی ارزان و بیخطر است؛ آزادانه استفاده کن.
جمعبندی
گیت در نگاه اول کمی گیجکننده است، اما با تمرین به طبیعت دوم تبدیل میشود. بهترین راه یادگیری، استفادهٔ روزمره است.
برای یادگیری عمیقتر با تمرین و کوییز، دورهٔ کامل گیت و گیتهاب آرنا را ببین — از صفر تا کار حرفهای با تیم.