مقدمه: چرا به گیت نیاز داریم؟
احتمالاً فایلی با اسم project_final و بعد project_final2 و project_final_واقعی داشتهاید. در پروژههای کوچک هم این روش گیجکننده است؛ اگر چند نفر روی یک پروژه کار کنند، فاجعه میشود. کدام نسخه آخرین است؟ چه کسی چه چیزی را عوض کرده؟ اگر تغییری مشکل ساخت، چطور به نسخهی قبل برگردیم؟
گیت دقیقاً برای حل همین مسائل ساخته شده است. تقریباً هر برنامهنویسی در هر حوزهای باید آن را بلد باشد، و خوشبختانه شروع کردنش سخت نیست.
گیت چیست؟
گیت (Git) یک سیستم کنترل نسخهی توزیعشده است. یعنی تغییرات فایلهای پروژه را ثبت میکند و به شما اجازه میدهد هر زمان خواستید به نسخههای قبلی برگردید، تغییرات را مقایسه کنید و چند نفر بدون بهمریختن کار هم روی یک پروژه کار کنند. لینوس تورووالدز، سازندهی لینوکس، آن را در سال ۲۰۰۵ ساخت.
گیت روی کامپیوتر خودتان کار میکند و برای استفاده از آن به اینترنت نیاز ندارید. هر کامپیوتر یک کپی کامل از تاریخچهی پروژه دارد.
تفاوت گیت و گیتهاب
این دو اسم معمولاً با هم گفته میشوند و مبتدیها اغلب آنها را یکی میگیرند، اما یکی ابزار است و دیگری سرویس:
سرویسهای دیگری مثل GitLab و Bitbucket هم هستند که همین نقش را برای گیت دارند.
مفاهیم اصلی
قبل از دستورها، با این چند اصطلاح آشنا شوید. بقیهی یادگیری روی همینها بنا میشود.
| اصطلاح | معنی ساده |
|---|---|
| Repository (مخزن) | پوشهی پروژه بههمراه کل تاریخچهی تغییرات |
| Commit | یک نقطهی ذخیره در تاریخچه، همراه با پیامی که میگوید چه عوض شده |
| Branch (شاخه) | مسیر موازی کار که بدون خراب کردن نسخهی اصلی میتوانید در آن تغییر بدهید |
| Merge | ادغام تغییرات یک شاخه در شاخهی دیگر |
| Remote | نسخهی آنلاین مخزن، مثلاً روی گیتهاب |
| Clone | گرفتن یک کپی کامل از مخزن آنلاین روی کامپیوتر |
اولین دستورهای گیت
برای اینکه حس واقعی کار را بگیرید، این دستورها را در ترمینال و داخل یک پوشهی خالی اجرا کنید. اولین مخزن و اولین کامیت شما با همین چند خط ساخته میشود:
دستور اول مخزن را میسازد، دستور دوم یک فایل ایجاد میکند، add آن را برای ثبت آماده میکند، commit تغییر را ذخیره میکند و log تاریخچه را نشان میدهد. اگر پیام کامیت خودتان را در خروجی دیدید، اولین قدم را با موفقیت برداشتهاید.






نظرات خوانندگان
نظر دیگران را بخوان یا دیدگاه خودت را ثبت کن
هنوز نظری ثبت نشده.