گیت و گیت هاب چیست
Git : گیت یک سیستم کنترل نسخه توزیع شده برای ردیابی تغییرات در کد منبع در طول توسعه نرم افزار است. این برای هماهنگی کار بین برنامه نویسان طراحی شده است، اما می توان از آن برای ردیابی تغییرات در هر مجموعه ای از فایل ها استفاده کرد. اهداف آن شامل سرعت، یکپارچگی داده ها و پشتیبانی از گردش های کاری غیرخطی توزیع شده است.
GitHub: گیت هاب یک سرویس میزبانی مخزن گیت مبتنی بر وب است که تمام عملکردهای کنترل نسخه توزیع شده و مدیریت کد منبع (SCM) Git را ارائه می دهد و همچنین ویژگی های خود را اضافه می کند
یک تصور غلط رایج وجود دارد که کسی می تواند از Git یا GitHub استفاده کند و تجربه مشابهی داشته باشد. اما از هر توسعه دهنده ای بپرسید، آنها به شما خواهند گفت که این دو موجودیت کاملاً متفاوت هستند. یکی، آنها عملکردهای مختلفی را انجام می دهند و اهداف متفاوتی را انجام می دهند. آنها حتی متعلق به یک شرکت نیستند (با وجود نام). بنابراین Git و GitHub دقیقاً چه هستند و تفاوت بین Git و GitHub به عنوان ابزار و خدمات نرم افزاری چیست؟
Git و GitHub کاملاً متفاوت عمل می کنند
تفاوت اصلی Git و GitHub در عملکرد آنها است. در حالی که هر دو مدیریت کد منبع (SCM) را ارائه میکنند و ادغام و اشتراکگذاری کد را آسانتر میکنند، شباهتهای آنها تقریباً به اینجا ختم میشود. Git را به عنوان یک کامپیوتر واحد و GitHub را به عنوان شبکه ای از چندین رایانه به هم پیوسته در نظر بگیرید، همه با یک هدف نهایی اما نقش بسیار متفاوتی برای نحوه رسیدن به آنجا دارند.
Git در هسته خود یک سیستم کنترل نسخه توزیع شده (DVCS) رایگان و منبع باز است که برای مدیریت تمام تاریخچه کد منبع طراحی شده است. می تواند تاریخچه ای از commit ها را حفظ کند، می تواند تغییرات را معکوس کند و به توسعه دهندگان اجازه می دهد کد را به اشتراک بگذارند. هر توسعه دهنده برای همکاری باید Git را روی دستگاه محلی خود نصب کرده باشد. معمولاً از آن به عنوان یکی از بهترین ابزارهای DevOps برای درک و استفاده در فضای توسعهدهندگان یاد میشود و امروزه در میان پرکاربردترین ابزارها قرار دارد. شرکتهایی مانند آمازون، فیسبوک و مایکروسافت از آن استفاده میکنند.
از سوی دیگر، GitHub یک سرویس میزبانی وب برای مخازن Git است. این همه DVCS SCM Git را ارائه می دهد و دارای برخی ویژگی های اضافی است. این شامل عملکردهای همکاری مانند مدیریت پروژه، مدیریت بلیط پشتیبانی، و ردیابی اشکال است. با GitHub، توسعهدهندگان میتوانند مخازن خود را به اشتراک بگذارند، به مخازن دیگر توسعهدهندگان دسترسی داشته باشند و نسخههای از راه دور مخازن را ذخیره کنند تا بهعنوان پشتیبان ارائه شوند.
آنها در محیط های مختلف کار می کنند
تفاوت دیگر در مقایسه Git در مقابل GitHub در محیطی است که آنها در آن کار می کنند. Git به صورت محلی بر روی یک سیستم نصب می شود، بنابراین توسعه دهندگان می توانند تاریخچه کد منبع خود را با استفاده از ماشین های محلی خود به عنوان مخزن مدیریت کنند. این بدان معناست که برای استفاده از Git نیازی به سرور متمرکز و دسترسی به اینترنت نیست. علاوه بر این، هیچ سیستم مدیریت کاربر و رابط کاربری گرافیکی اختصاصی دسکتاپ موجود نیست.
در همین حال، GitHub در فضای ابری زندگی می کند، بنابراین دسترسی به اینترنت ضروری است. همچنین دارای سیستم مدیریت کاربر داخلی و رابط کاربری گرافیکی کاربرپسند است. GitHub علاوه بر وب سایت اصلی خود، دارای نسخه دسکتاپ است که می تواند بر روی رایانه های محلی نصب شود تا به همگام سازی کد کمک کند. لازم به ذکر است که Git بدون GitHub قابل استفاده است، اما GitHub بدون Git قابل استفاده نیست. (GitHub در اصل برای کار درست با Git ساخته شده است.
هر دو Git و GitHub دستورات را متفاوت مدیریت می کنند
توسعه دهندگان Git خود یک ابزار خط فرمان را انجام می دهند که در آن کدها مانند commit و ادغام در ابزار Git در دستگاه های محلی خود تغییر می کنند. در مقابل، GitHub رابط گرافیکی مبتنی بر ابر خود را در جایی که این وظایف انجام می شود، ارائه می دهد. این رابط همچنین به توسعه دهندگان کنترل دسترسی، ویژگی های همکاری و ابزارهای مختلف مدیریت کار را ارائه می دهد.

وقتی نوبت به دستورات می رسد، Git منحصراً بر روی وظایف SCM مانند فشار و کشیدن، commit، بازنشانی، واکشی و ادغام تمرکز می کند. در همین حال، GitHub به عنوان میزبان تیم های مخزن Git برای ذخیره کد خود در یک مکان متمرکز عمل می کند. در حالی که Git ابزاری است که برای مدیریت چندین نسخه از ویرایشهای کد منبع که سپس به فایلهای موجود در مخزن Git منتقل میشوند، استفاده میشود، GitHub به عنوان مکانی برای آپلود نسخههای یک مخزن Git عمل میکند.
بنابراین، به یک معنا، در مورد عملکرد Git در مقابل GitHub هیچ مقایسه ای وجود ندارد. آنها به جای رقابت با یکدیگر در این فضا مکمل هستند.
آنها متعلق به شرکت های مختلف هستند
آنها رقبای متفاوتی دارند