git چیست ؟ جرا باید بدونیم git چیست ؟ این آشنایی با git git که میگن داستانش چیه ؟ و چرا باید عادت کنیم که از گیت استفاده کنیم ؟ خیلیا وقتی اول قضیه git github gitlab میشنون قاطی میکنن و نمیدونن داستانش رو . تو این مطلب خیلی خودمونی مفهومی به این مورد میپردازیم.
گیت git چیست ؟
گیت یه ابزاری واسه مدیریت پروژه حالا ازین لفظ های پروژه مروژه بگذریم خیلی مفهومی بگم که هم میشه به عنوان بک اپ نگاش کرد هم مثل برگشت به عقب جلو برا پروژمون استفاده میشه و هم جلوی تداخل تو برنامه نویسی چند نفره رو میگره و مدیریت پروژه میشه باهاش کرد ، مثلا فک کنین یه تیم دو نفره هستید میخواید یه برنامه جمع تفریق بنویسیه .
فرض کنین علی و رضا همزمان دارن رو یه پروژه ای کار میکنن 1000 خط کد داره علی میاد میگه خط 880 میتونه بهتر باشه تغییرش میده رضا میگه منم خط 890 تغییر دادم حالا وقتی علی دوتا خط اضافه کنه خط 890 برا رضا کجا میشه ؟ چجوری تغییراتو هندل کنیم؟
نمیشه هر سری کپی پیست کنن از تلگرام واتساپ یا از سرورو ازینچیزا یا بر فرض دوروز دیگه رضا با علی بحثش میشه میگه خط 880 روشت مشکل داره شاید 100 بار دیگه هم ازین داستانا پیش میان چجور میخوان هی برگشت به عقب تمیز و دقیق داشته باشن ؟ خوب اینجاست که گیت کمک میکنه و مثل یه بایگانی عمل میکنه تموم تغیرات رو مثل یه گزارش درخودش داره .البته قابلیتاش خیلی از یه بایگانی کننده بیشتره .
یا مثلا نفر سومی برای نظارت هست . که وقتی و علی رضا سر تغییر خط 880 کد بحث میکنن میگه شما هر کدوم تغییراتتون رو بفرستید تو git اینکارو میگن push کردن بعد اون نفر سوم که برسی یا review میکنه که کدومو بلاخره استفاده یا merge یا ادغام کنه در پروژه .
این وسط github – gitlab چیکارن ؟
اقا فک کنین یه برنامه resizer image یه نرم افزار ویندوز مک و .. داره و یکی امده یسری بهترش کرده اوردتش انلاین تحت وب ارائه داده البته این تعریف یجوریه ها ولی خوب فک کنم کاردستتون امده.
این کاریه که github – gitlab کردن یعنی بجای اینکه یکی بیاد سازوکار های git رو رو یه سرور شخصی انجام بده github – gitlab اینارو از رو منابع خودشون بما ارائه دادن یعنی بجا اینکه فایل های پروژه ما تغییرات نسخه هاش و .. بیان رو هارد سرور بایگانی بشن میان رو سرور های این دوتا هستن که شما میتونین هرکدومشون خوشتون میاد استفاده کنید . خوب بگم که فضا های ایناهم محدوده 500 مگ فضا میده برا پروژتون تا جایی که یادم هست . بیشتر ازون بخواید یا قابلیت های بیشتر باید اشتراکشو بخرید . البته بگم نسخه رایگان اکثر مواقع جوابه .
البته مزیت گیت هاب گیت لب بخاطر حفاظت از داده ها و پایداری اطلاعاتی که ارائه میدن زیاده یعنی شما وقتی خودتون git رو سرور شخصی را میندازید باید نگران هک شدن سرور سوختن هارد و… باشید ولی گیت هاب و یا گیت لب همشو هندل میکنن و خیالتون ازین بابت راحت و تخت تخته بقول معروف.