GitHub برای مبتدیان: راهنمای همه توسعه دهندگان جدید

اگر نمی دانید چگونه از GitHub استفاده کنید، این مقاله برای شما مناسب است. GitHub یک منبع برنامه نویسی شناخته شده برای به اشتراک گذاری کد است. این برای همه کاربران رایگان است و به توسعه دهندگان از سراسر جهان اجازه می دهد تا با یکدیگر همکاری کنند. نوشتن کد می تواند پیچیده باشد، اما با ابزارهای مناسب و پشتیبانی آسان تر می شود. در این مقاله، نحوهی یادگیری استفاده از GitHub را برای یک تازهکار توضیح خواهیم دادرااست
گیت چیست؟
لینوس توروالدز، معمار هسته سیستم عامل لینوکس، Git را در سال 2005 به عنوان یک سیستم کنترل نسخه منبع باز ایجاد کرد که توسعه دهندگان را قادر می سازد تا تغییرات در کد پروژه را مدیریت کنند. کنترل نسخه هنگام کار بر روی پروژه های نرم افزاری مهم است زیرا سیستمی است که برای مدیریت هرگونه تغییر در اسناد، برنامه های رایانه ای، وب سایت های بزرگ و سایر مجموعه های اطلاعاتی استفاده می شود. Git تغییرات ایجاد شده در کد را در طول زمان در یک پایگاه داده منحصربهفرد به نام مخزن ثبت میکند تا توسعهدهندگان به راحتی بتوانند با مشاهده تاریخچه پروژه و دیدن اینکه چه کسی، چه زمانی و چرا چه تغییراتی را انجام داده است، پروژه را به حالت قبلی برگرداند. ذخیره سازی مداوم کپی از کل پروژه در پوشه های مختلف بدون سیستم کنترل نسخه بسیار کند است، به خصوص اگر چندین نفر مجبور باشند روی یک پروژه کار کنند. یک ابزار بسیار مفید، Git رایگان، فوق العاده سریع، مقیاس پذیر است و از همکاری پشتیبانی می کند.
سیستم های کنترل نسخه
دو نوع سیستم کنترل نسخه (VCS) وجود دارد: متمرکز و توزیع شده
-
سیستمهای کنترل نسخه متمرکز: همه اعضای تیم به یک سرور مرکزی متصل میشوند تا آخرین نسخه کد را دریافت کنند و هنگام استفاده از سیستم کنترل نسخه متمرکز، تغییرات خود را با سایر اعضای تیم به اشتراک بگذارند. اشکال سیستم های کنترل نسخه متمرکز این است که اگر سرور از کار بیفتد، مجبور می شوید منتظر بمانید تا سرور دوباره آنلاین شود و بتوانید عکس های فوری یک پروژه را ذخیره کنید. براندازی (SVN) نمونه ای از یک سیستم کنترل نسخه متمرکز است
-
سیستمهای کنترل نسخه توزیعشده: در سیستمهای کنترل نسخه توزیعشده (DVCS)، هر عضو تیم یک کپی از فایلهای پروژه را به همراه تاریخچه خود در رایانه خود دارد، بنابراین برای پیگیری همه موارد نیازی به تکیه بر یک سرور مرکزی ندارید. نسخه های فایل های یک پروژه اگر سرور اصلی در دسترس نیست، همچنان می توانید مستقیماً کار خود را با دیگران همگام کنید. همچنین می توانید عکس های فوری پروژه خود را به صورت محلی در رایانه خود ذخیره کنید. Git و Mercurial دو نمونه از سیستم های کنترل نسخه توزیع شده هستند
GitHub چیست؟
در GitHub میتوانید مخازن مختلف را ستارهدار، تماشا و فورک کنید. “Fork” به شما این امکان را می دهد که یک کپی از پروژه شخص دیگری بدون تأثیرگذاری بر روی نسخه اصلی تهیه کنید، در حالی که “watch” هنگامی که تغییراتی در پروژه ای که دنبال می کنید ایجاد می شود به روز رسانی می کند. در نهایت، “ستاره” نسخه GitHub از دکمه “لایک” است، شبیه به دوست داشتن در فیس بوک.
مزایای GitHub
راصفحات GitHub: شما می توانید نمونه کارهای خود را در وب سایت های زیبا به نمایش بگذارید. این وب سایت ها ممکن است به دلخواه شما سفارشی شوند و کاملاً مطابق با HTML هستند. همچنین می توانید از تم های رایگان و ممتاز استفاده کنید.
پشتیبان گیری: صرف نظر از اینکه چه اتفاقی برای دستگاه محلی شما میافتد، پشتیبانگیریهای GitHub راهحلی ساده برای در دسترس نگهداشتن کد و تاریخچه نسخه به صورت آنلاین ارائه میکنند.
همکاری: یک پلت فرم عالی برای توسعه مشترک، GitHub با ساختن نرم افزار به حل مشکلات کمک می کند. این بهترین شبکه برای میزبانی مخازن نرم افزار است، با بیش از 73 میلیون توسعه دهنده نرم افزار در GitHub برای ذخیره، مدیریت و مشارکت در پروژه های خود و همچنین پروژه های دیگران.
اگر در زمینه توسعه نرم افزار تازه کار هستید، ممکن است با GitHub آشنا نباشید. با این حال، هنگامی که شروع به استفاده از آن کنید، به سرعت به آن عادت خواهید کرد. مردم می توانند از طریق استفاده از GitHub که تعامل را ترویج می کند، کار یکدیگر را مشاهده، مشارکت و به اشتراک بگذارند. این پلتفرم سیستمی را فراهم می کند که کدنویس ها می توانند تغییرات ایجاد شده در طول فرآیند کدنویسی را پیگیری کنند و همچنین یک سایت شبکه ای را ارائه می دهد که توسعه دهندگان می توانند در آن همکاری کنند. همچنین محیطی را فراهم می کند که بهبود کد را تشویق می کند. GitHub اکنون مهم ترین فضای ذخیره سازی مبتنی بر ابر برای پروژه های نرم افزاری است. این به برنامه نویسان اجازه می دهد تا کدهای یک پروژه را تکرار کنند و بدون تغییر کد در پروژه اصلی، با خیال راحت روی آن کار کنند.
علاوه بر این، هاب دارای نرم افزار نسخه سازی قوی است که انشعاب و ادغام را ساده می کند. از آنجا که کد در همان Git ذخیره می شود، افراد دیگر می توانند به طور همزمان روی آن کار کنند.
علامت گذاری: GitHub از Markdown برای پیگیری مشکلات و نظرات کاربران پشتیبانی می کند. Markdown به شما امکان می دهد از یک ویرایشگر متن ساده برای نوشتن اسناد فرمت شده استفاده کنید
شروع کار با GitHub
در این مقاله، ما روی نسخه وب سایت Github کار خواهیم کرد. بنابراین، بیایید با تظاهرات شروع کنیم!
ایجاد یک حساب کاربری در GitHub
برای ایجاد یک حساب کاربری، باید به سایت رسمی Github بروید.
به Github.com بروید. اگر حساب کاربری با GitHub ندارید، روی “ثبت نام” کلیک کنید. اگر قبلاً یک حساب کاربری دارید، روی “ورود به سیستم” کلیک کنید.
ایجاد یک مخزن
تمام فایل های پروژه شما در یک مخزن ذخیره می شوند. میتوانید با استفاده از مخازن، کار خود را مدیریت کرده و با دیگران همکاری کنید، مخازنی که میتوانند بهصورت جداگانه متعلق به چندین توسعهدهنده در یک سازمان باشند. با انتخاب نمایان بودن مخزن، همچنین می توانید افرادی را که به آن دسترسی دارند محدود کنید. فایلهای کد، فایلهای متنی، فایلهای تصویری و سایر انواع فایلها همگی میتوانند در یک مخزن ذخیره شوند.
به یک مخزن GitHub ایجاد کنید، فقط این مراحل آسان را دنبال کنید:
مرحله 1: در گوشه سمت چپ صفحه، روی “ایجاد مخزن” کلیک کنید:
گام 2: یک نام برای مخزن خود تایپ کنید. در مثال زیر، ما مخزن خود را “hello-world” می نامیم:
مرحله 3: شرحی از مخزن خود اضافه کنید (اختیاری). در این مثال، ما از “مخزن من” استفاده خواهیم کرد:
مرحله 4: نمایان بودن مخزن را انتخاب کنید:
مرحله 5: روی «افزودن فایل README» کلیک کنید:
مرحله 6: روی “ایجاد مخزن” کلیک کنید.
شما با موفقیت مخزن خود را ایجاد کردید و آن را با یک فایل README مقداردهی اولیه کردید. شبیه تصویر زیر خواهد بود:
حالا بیایید به سمت ایجاد شاخه ها برویم.
ایجاد یک شعبه در GitHub
میتوانید با استفاده از شاخهها، ایدههای جدید را آزمایش کنید، ویژگیها را توسعه دهید، یا باگها را در یک منطقه محدود از مخزن خود برطرف کنید. هر مخزن دارای یک شاخه پیش فرض است و شما می توانید شاخه های اضافی داشته باشید. شما می توانید یک صفحه GitHub را با استفاده از یک شاخه منتشر کنید. برای ایجاد یک شاخه، باز کردن یک درخواست کشش، حذف یک شاخه یا بازیابی یک شاخه، به دسترسی Write به یک مخزن نیاز دارید. این ویژگی به شما اجازه می دهد تا روی چندین نسخه از یک مخزن به طور همزمان کار کنید.
به یک شعبه در GitHub ایجاد کنید، مراحل زیر را دنبال کنید:
مرحله 1: به صفحه اصلی مخزن بروید.
گام 2: روی شاخه ها کلیک کنید:
مرحله 3: روی “شاخه جدید” کلیک کنید:
مرحله 4: نام شعبه را وارد کنید و منبع شعبه را تغییر دهید:
مرحله 5: روی “ایجاد شعبه” کلیک کنید:
هنگامی که یک شعبه جدید ایجاد می شود، دو شاخه در مخزن شما وجود دارد. شعبه جدید کپی شعبه اصلی است.
استایجاد یک تعهد
commit یک رکورد از تغییرات یک یا چند فایل در شعبه شما است. شما باید با هر commit یک پیام commit اضافه کنید که تغییراتی که انجام دادهاید را با جزئیات نشان دهد.
به اولین تعهد خود را انجام دهید، مراحل زیر را دنبال کنید:
مرحله 1: روی فایلی که ایجاد کردید کلیک کنید:
گام 2: روی نماد مداد در گوشه سمت راست فایل کلیک کنید:
مرحله 3: پس از کلیک بر روی نماد مداد، یک ویرایشگر باز می شود که می توانید تغییرات خود را در آن بنویسید. سپس، یک پیام commit می نویسید که تغییرات شما را توضیح می دهد:
مرحله 4: بر روی “Commit changes” کلیک کنید:
ما اولین تعهد خود را با موفقیت انجام دادیم.
باز کردن و ادغام درخواست های کششی
هنگامی که تغییرات را به یک شعبه در یک مخزن فشار می دهید، می توانید با ارسال یک درخواست کشش (PR) توسعه دهندگان دیگر را در مورد آن تغییرات مطلع کنید. پس از ارسال درخواست کشش، سایر اعضای تیم میتوانند کد شما را بررسی کنند، سؤال بپرسند، بازخورد ارائه دهند و تعهدات را مستقیماً در GitHub اضافه کنند، قبل از اینکه تغییرات شما در شعبه ادغام شوند.
حالا بیایید این مراحل ساده را دنبال کنیم ایجاد یا باز کردن درخواست کشش
مرحله 1: به صفحه اصلی مخزن بروید. بعد، در منوی شاخه خود، شاخه ای را که حاوی commit شماست انتخاب کنید.
گام 2: در لیست فایل ها بر روی “Pull requests” کلیک کنید:
مرحله 3: بر روی گزینه “New pull request” کلیک کنید. این به شما امکان می دهد تغییرات را با هم مقایسه کنید:
مرحله 4: یک منوی کشویی با گزینه هایی برای شاخه پایه و یک شاخه مقایسه وجود دارد. شاخه پایه شاخه اصلی است و برای انتخاب شاخه ای که می خواهید تغییرات را در آن ادغام کنید استفاده می شود، در حالی که شاخه مقایسه برای انتخاب شاخه موضوعی که در آن تغییرات ایجاد شده است استفاده می شود:
مرحله 5: توضیحی برای درخواست کشش خود بنویسید:
مرحله 6: روی “ایجاد درخواست کشش” کلیک کنید:
هنگامی که یک درخواست pull انجام شد، می توانید commit ها را از شاخه موضوع خود به درخواست pull فشار دهید تا آنها را به آن اضافه کنید. درخواست pull شما این commit ها را به صورت متوالی نمایش می دهد و تغییرات در برگه “فایل ها تغییر کرده اند” نشان داده می شود.
ادغام درخواست کشش شما
هر درخواست کششی GitHub را می توان در هر زمان به طور پیش فرض ادغام کرد. یک درخواست کشش پیشنویس را نمیتوان ادغام کرد، اما ممکن است محدودیتهایی برای ادغام یک درخواست کشش در یک شاخه خاص وجود داشته باشد. هنگامی که یک درخواست کشش را ادغام می کنید، ممکن است مخزن به گونه ای تنظیم شود که شاخه اصلی آن درخواست کشش بلافاصله حذف شود.
بیایید این مراحل ساده را دنبال کنیم برای ادغام یک درخواست کشش:
مرحله 1: در لیست فایل های خود بر روی “Pull requests” کلیک کنید:
گام 2: روی درخواست کششی که میخواهید ادغام شود کلیک کنید.
مرحله 3: روی “Merge pull request” کلیک کنید و سپس روی “Confirm merge” کلیک کنید.
شما اکنون با موفقیت درخواست کشش خود را ادغام کرده اید.
نتیجه گیری
GitHub یک رابط کاربر پسند مبتنی بر وب با ردیابی مشکل، WIKIS، API های REST و ابزارهای خط فرمان برای ویندوز، مک، لینوکس و حتی دستگاه های تلفن همراه ارائه می دهد. با GitHub میتوانید یک نمایه ایجاد کنید، پروژهها را آپلود کنید، و حسابهای دیگر کاربران را دنبال کنید تا آنها را به اشتراک بگذارید و با آنها ارتباط برقرار کنید. علاوه بر این، Git یک سیستم کنترل نسخه مبتنی بر ابر و ابزار برای مدیریت تاریخچه کد منبع شما است. GitHub سرویسی است که برای پروژه هایی استفاده می شود که از Git استفاده می کنند، در حالی که Git خود ابزار است.