گیت یک نوع از ورژن کنترل هست! ورژن کنترل های ابزار هایی هستند که به ما اجازه ی مدیریت کدهای پروژه و همکاری تیمی رو میدهند.
با کمک ورژن کنترل ها هر شخصی میتونه در فضای کاری خودش کار کنه و تاریخچه تغییرات کد ها و چه کسانی رو کد ها کار کردن رو هم مشاهده کنه و بعد از تموم شدن کارش و تست کردن میتونه رو در برنج های دیگه مرج کنه و ماموریت رو به پایان برسونه :)
در متن بالا گفتم تاریخچه, یعنی چی؟ یعنی که اگر شما 3 سال پیش یک تغییری روی کد داده باشید و الان اون رو لازم داشته باشد خیلی راحت میتونید به اون کد دسترسی پیدا کند.
برای اینکه بیشتر با گیت آشنا بشید پیشنهاد میکنم ویدئویی گیت چیست که رو یوتیوب منتشر کردم رو مشاهده کنید. اینم لینک آپارات
حالا شاید براتون سوال باشه git چطور کار کنه؟
زمانی که شما وارد یک پروژه میشود که ورژن کنترل گیت بروی ان وجود دارد ناخودگاه متوجه حضور پوشه .git میشوید.
من پروژه ندارم چیکار کنم؟ .git رو نمیبینم! کجاست؟
خب دوستان عزیزی که پروژه گیت ندارن میتونن به دو روش یک پروژه گیت داشته باشن.
اگر نمیدونی با این دستورا چجوری کار کنی پیشنهاد میکنم این ویدئو رو حتما ببینی. تفاوت git init و git clone
حالا بعد از اینکه مراحل بالا رو طی کردیم وارد دایرکتوری .git پروژه مون میشیم و دستور زیر رو میزنیم:
$ ls -1
خب, بعد از زدن دستور بالا انتظار داریم با چنین صحنه ای مواجه بشیم:
دایرکتوری branches: گیت خیلی وقت است که دیگه از این دایرکتوری استفاده نمیکنه.
فایل config: تنظیمات مربوط به پروژه شما
فایل HEAD: اشاره به branch کنونی شما. من در حال حاضر روی مستر هستم.
دایرکتوری hooks: یک سری shell script که با توجه به یک رخداد گیت منفجر میشوند (فارسی سخت)
مثال: قبل از ایونت commit چک بشه که ایندنت ها رعایت شده یا نه و ...
دایرکتوری objects: خب مهم ترین بخش پوشه گیت. گیت تمام داده خودش و کدهای شما رو اینجا به صورت هش شده نگه میداره
سه نوع مختلف ابجکت داریم:
1. commit
2. tree
3. blob (content or source code)
مطلب تموم شد؟ تازه شروع ماجراست.
توی مقاله های بعدی بیشتر بررسی میکنیم که گیت چجوری کار میکنه و تخصصی تر دایرکتوری ها و فایل ها رو بررسی میکنم.
آموزش های بیشتر در کانال تلگرام @parcode_ir