منظور از GitHub چیست

چکیده :

منظور از GitHub چیست



گیت‌هاب (به انگلیسی: GitHub) یک سرویس میزبانی وب برای پروژه‌های برنامه نویسان در سراسر دنیا بوده که از سیستم سورس کنترل گیت استفاده می‌کند. گیت‌هاب با استفاده از روبی آن ریلز و ارلنگ ساخته شده‌است. این سرویس هم دارای گزینه رایگان برای پروژه‌های متن‌باز و هم پولی برای پروژه‌های تجاری است.

گیت هاب در سال 2008 پایه‌گذاری گردید و بر اساس گزارشی در ژوئن 2011، این سرویس محبوب‌ترین سرویس ارائه‌دهنده گیت می باشد.

این سایت عملکردهای یک جامعه مجازی شامل: فید، دنبال کننده و گراف شبکه برای نمای دادن توسعه دهندگانی که بر یک نسخه? مرجع (مخزن) کار می‌کنند، را به کاربرانش ارائه می‌دهد.

در ژوئیه 2012 این شرکت با صد میلیون دلار آمریکا در سری آ سرمایه داران اصلی، از طرف اندرسون هورویتز رده‌بندی شد.

در قلب GitHub یک پروژه متن باز که توسط Linus Torvalds (خالق لینوکس) ایجاد شده است به نام Git وجود دارد. در واقع Git یک سیستم کنترل نسخه نرم افزار است. Matthew McCullough یکی از اعضای GitHub میگوید: Git مانند دیگر سیستم های کنترل نسخه، نسخه های نرم افزار را ذخیره، مدیریت و فراخوانی میکند. که البته بیشتر برای کدها استفاده میشود اما Git میتواند برای هر نوع فایل دیگری مانند یک فایل Word یا TXT نیز استفاده شود.

در GitHub میتوان پروژه ها را تحت عنوان Repository ایجاد کرد. اما GitHub به جز امکان ایجاد repository ویژگی های دیگری مانند خط فرمان، رابط گرافیکی، بوجود آوردن همکاری در repositoryهای مختلف و غیره را میدهد.

برای خیلی ها ممکن است سوال پیش آمده باشد چطور یک برنامه نویس از پروژه ای که به صورت اوپن سورس منتشر میکند محافظت کرده و از سوء استفاده جلوگیری میکند؟ بر اساس همین سوال شخص لینوس توروالدز Git را ایجاد کرد برای ذخیره پروژه های متن باز و حفظ حقوق برنامه نویس پروژه سایت گیت هاب بر پایه Git تشکیل شده و به همین منظور استفاده میشود. البته برنامه نویس میتواند پروژه را بصورت خصوصی ذخیره کند و از انتشار عمومی پروژه خودداری کند. با استفاده از این سیستم برنامه نویسان پروژه های متن باز را با خیال راحت و با حفظ حقوق منتشر کنند و به این ترتیب پروژه به نام آن برنامه نویس ثبت خواهد شد. در این سیکل برنامه نویس یک اکانت در این سایت ایجاد و برای هر پروژه متن باز که منتشر میکند یک صفحه (مخزن) ساخته و پروژه را در آن ذخیره میکند.