GitHub چیست و چرا استفاده می شود؟
GitHub یک وبسایت و سرویسی است که همیشه در مورد آن غوغا میکنیم، با این حال بسیاری از مردم واقعاً نمیدانند چه کار میکند. آیا می خواهید بدانید که این همه شلوغی GitHub چیست؟ بخوانید تا متوجه شوید.
Git در GitHub
برای درک GitHub، ابتدا باید درک درستی از Git داشته باشید. Git یک سیستم کنترل نسخه منبع باز است که توسط لینوس توروالدز - همان شخصی که لینوکس را ایجاد کرد، راه اندازی شده است. Git مشابه سایر سیستم های کنترل نسخه است - خرابکاری CVS و Mercurial به نام چند مورد.
بنابراین، Git یک سیستم کنترل نسخه است، اما این به چه معناست؟ هنگامی که توسعه دهندگان چیزی را ایجاد می کنند (برای مثال یک برنامه)، تغییرات مداوم در کد ایجاد می کنند و نسخه های جدید را تا اولین انتشار رسمی (غیر بتا) و پس از آن منتشر می کنند.
سیستم های کنترل نسخه این ویرایش ها را زنده نگه می دارند و تغییرات را در یک مخزن مرکزی ذخیره می کنند. این به توسعه دهندگان اجازه می دهد تا به راحتی با یکدیگر همکاری کنند، زیرا می توانند نسخه جدیدی از برنامه را دانلود کنند، تغییراتی ایجاد کنند و آخرین نسخه را آپلود کنند. هر توسعهدهندهای میتواند این تغییرات جدید را ببیند، دانلود کند و مشارکت کند.
به همین ترتیب، افرادی که هیچ ارتباطی با توسعه پروژه ندارند، همچنان می توانند فایل ها را دانلود و استفاده کنند. اکثر کاربران لینوکس باید با این فرآیند آشنا باشند، زیرا استفاده از Git، Subversion یا روشهای مشابه دیگر برای دانلود فایلهای مورد نیاز بسیار متداول است - بهویژه برای آمادهسازی برای کامپایل یک برنامه از کد منبع (روشی نسبتاً رایج برای کاربران لینوکس).
Git سیستم کنترل نسخه ترجیحی برای اکثر توسعه دهندگان است، زیرا مزایای متعددی نسبت به سایر سیستم های موجود دارد. تغییرات فایل را کارآمدتر ذخیره می کند و یکپارچگی فایل را بهتر تضمین می کند. اگر علاقه مند به دانستن جزئیات هستید، صفحه اصول Git این شامل توضیح جامعی از نحوه عملکرد Git است.
“pivot” در github
ما ثابت کردهایم که Git یک سیستم کنترل نسخه است، مشابه اما بهتر از بسیاری از گزینههای موجود. بنابراین، چه چیزی GitHub را بسیار خاص می کند؟ Git یک ابزار خط فرمان است، اما مرکز همه چیزهایی که Git شامل می شود، هاب - GitHub.com - است که در آن توسعه دهندگان پروژه های خود را ذخیره می کنند و با افراد همفکر خود شبکه می کنند.
بیایید به برخی از دلایل اصلی علاقه گیک ها به استفاده از GitHub بپردازیم و برخی از اصطلاحات را در طول مسیر یاد بگیریم.
فروشگاه
مخزن (معمولاً به "repo" کوتاه می شود) مکانی است که تمام فایل های یک پروژه خاص در آن ذخیره می شوند. هر پروژه مخزن مخصوص به خود را دارد و شما می توانید با یک URL منحصر به فرد به آن دسترسی داشته باشید.
Forking Repo
انشعاب زمانی است که شما یک پروژه جدید را بر اساس پروژه دیگری که از قبل وجود دارد ایجاد می کنید. این یک ویژگی عالی است که توسعه بیشتر نرم افزار و پروژه های دیگر را بسیار تشویق می کند. اگر پروژهای را در GitHub پیدا کردید که میخواهید در آن مشارکت کنید، میتوانید مخزن را جدا کنید، تغییراتی را که میخواهید ایجاد کنید و پروژه اصلاحشده را به عنوان یک مخزن جدید منتشر کنید. اگر مخزن اصلی که تقسیم کردید برای ایجاد پروژه جدید خود به روز شده است، می توانید به راحتی آن به روز رسانی ها را به فورک موجود خود اضافه کنید.
درخواست های برداشت
شما یک مخزن جمع آوری کرده اید، یک بررسی پروژه عالی انجام داده اید، و می خواهید که توسط توسعه دهندگان اصلی شناسایی شود - و احتمالاً در پروژه/مخزن رسمی گنجانده شود. شما می توانید این کار را با ایجاد یک درخواست برداشت انجام دهید. نویسندگان مخزن اصلی می توانند کار شما را ببینند و سپس انتخاب کنند که آیا آن را در پروژه رسمی بپذیرند یا نه. هنگامی که یک درخواست کشش صادر می کنید، GitHub یک رسانه ایده آل برای ارتباط شما و مدیر پروژه فراهم می کند.
شبکه های اجتماعی
جنبه شبکههای اجتماعی GitHub احتمالاً قویترین ویژگی آن است که به پروژهها اجازه میدهد فراتر از هر یک از ویژگیهای دیگر ارائه شده رشد کنند. هر کاربر در GitHub نمایه خاص خود را دارد که مانند یک رزومه عمل می کند و کارهای گذشته و مشارکت شما در پروژه های دیگر را از طریق درخواست های کششی نشان می دهد.
بررسیهای پروژه را میتوان به صورت عمومی مورد بحث قرار داد، بنابراین گروه بزرگی از متخصصان میتوانند با دانش و همکاری برای پیشبرد پروژه همکاری کنند. قبل از ظهور GitHub، توسعه دهندگان علاقه مند به مشارکت در یک پروژه معمولاً نیاز داشتند که ابزاری برای تماس با نویسندگان - شاید از طریق ایمیل - بیابند و سپس آنها را متقاعد کنند که می توان به آنها اعتماد کرد و مشارکت آنها مشروع است.
لاگ ها را تغییر دهید
هنگامی که چندین نفر در یک پروژه همکاری می کنند، پیگیری بررسی ها سخت است - چه کسی چه چیزی، چه زمانی و در کجا آن فایل ها ذخیره می شود. GitHub با پیگیری همه تغییرات وارد شده به مخزن از این مشکل مراقبت می کند.
Github فقط برای توسعه دهندگان نیست
همه اینها در مورد اینکه چگونه GitHub برای برنامه نویسان عالی است صحبت می کند و ممکن است باعث شود فکر کنید که آنها تنها کسانی هستند که آن را مفید خواهند یافت. اگرچه کمتر رایج است، اما در واقع می توانید از GitHub برای هر نوع فایلی استفاده کنید. برای مثال، اگر تیمی دارید که دائماً در یک سند Word تغییراتی ایجاد می کند، می توانید از GitHub به عنوان سیستم کنترل نسخه خود استفاده کنید. این عمل رایج نیست، زیرا در بیشتر موارد جایگزین های بهتری وجود دارد، اما چیزی است که باید در نظر داشت.
اکنون که می دانید GitHub چیست، آیا برای شروع آماده هستید؟ قابل اعتماد و متخصص GitHub.com و حتما بررسی کنید صفحات راهنما خودشون بعد از ثبت نام