پس از آشنایی مقدماتی با گیت به بررسی و آشنایی با  گیت‌هاب می پردازیم. همان‌طور که گفته شد، گیت‌هاب چیزی فراتر از یک مخزن پروژه است.

این سرویس یکی از نسخه‌های گرافیکی Git به شمار می‌رود. مسئله‌ ای که مطرحست، این است که ممکن است نخواهید پروژه‌ی خود را با دیگران به اشتراک بگذارید. در این حالت استفاده از گیت و ذخیره‌ی تغییرات به‌صورت لوکال بهترین گزینه است؛ همچنین در استفاده از گیت‌هاب شما ملزم به داشتن اتصال اینترنت هستید؛ ولی در کار با گیت چنین الزامی وجود ندارد. قبل از شروع کار با گیت‌هاب نیاز به آشنایی با مفاهیم خاصی است که در زیر به آن‌ها می‌پردازیم.

گام اول: ساخت مخزن یا Repository

مخزن یا repository که به اختصار به آن repo نیز گفته می‌شود می‌تواند شامل فولدر، فایل، تصویر، ویدیو و هر آنچه پروژه‌ی شما به آن نیاز دارد باشد. گیت‌هاب در ابتدای ساخت پروژه امکان افزودن README و سایر موارد مانند لایسنس را در اختیار می‌گذارد.

مخزن اول شما با نام hello-world می‌تواند مکانی برای ذخیره کردن ایده‌ها، منابع یا حتی اشتراک‌گذاری و بحث در مورد چیزهای مختلف باشد.

  • برای ساخت یک مخزن جدید در گوشه‌ی بالا سمت راست و نزدیک به آواتار یا نماد کاربری شما، روی + و سپس New repository کلیک کنید.
  • توضیح کوتاهی بنویسید.
  • در صورت تمایل به اضافه کردن README گزینه‌ی Initialize this repository with a README را انتخاب کنید.

    آموزش گیت هاب

  • روی Creat repository کلیک کنید.

گام دوم: ساخت شاخه یا Branch

برنچینگ روشی برای کار همزمان روی نسخه‌های مختلف یک مخزن است.

به‌طور پیش‌فرض مخزن شما یک شاخه به نام master دارد که شاخه‌ی اصلی به‌حساب می‌آید. از شاخه‌ها برای آزمون و خطا و ویرایش کدها قبل از اعمال تغییرات در شاخه‌ی اصلی استفاده می‌شود.

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

نمودار زیر روندی را که یک شاخه‌ی جانبی با نام feature باید طی کند تا با شاخه‌ی اصلی تلفیق شود نمایش می‌دهد.

آموزش گیت هاب

 

  • برای ساخت یک شاخه‌ جدید به مخزن جدیدی که با نام hello-world ساخته‌اید بروید.
  • روی فهرست بازشونده‌ موجود در بالای فهرست فایل‌ها که روی آن نام شاخه نوشته شده است کلیک کنید. در TextBox بازشده نام شاخه‌ی جدید، مثلا readme-edits را وارد کنید.
  • روی دکمه‌ی Create branch کلیک کنید یا دکمه‌ی Enter را در کیبورد خود بزنید.آموزش گیت هاب

حالا دو شاخه دارید؛ یکی master و دیگری readme-edits که کاملا شبیه به هم هستند؛ البته تا زمانی که تغییری در هیچ‌یک اعمال نکرده‌ایم.

گام سوم: ایجاد تغییرات و اعمال آن‌ها

حالا که شاخه‌ جدیدی با محتویات یکسان با شاخه‌ی اصلی داریم، بدون ترس ویرایش‌های خود را آغاز می‌کنیم.

در گیت‌هاب به تغییرات اعمال‌شده کامیت (commit) می‌گویند. هر کامیت یک پیام کامیت نیز به همراه دارد که توضیح کوتاهی در رابطه با دلیل اعمال آن تغییر است. پیام‌های کامیت به سایر مشارکت‌کنندگان در پروژه این امکان را می‌دهد که متوجه شوند شما چه تغییری را به چه دلیل اعمال کرده‌اید.

  • برای اعمال یک تغییر روی فایل README.md کلیک کنید.
  • روی آیکون مداد در گوشه‌ی بالا سمت راست کلیک کنید تا بتوانید آن را ویرایش کنید.
  • در ویرایشگر، کمی درباره‌ی خود بنویسید.
  • یک پیام Commit برای توصیف تغییرات خود بنویسید.
  • روی دکمه‌ی Commit changes کلیک کنید.


آموزش گیت هاب

تغییرات ایجادشده در فایل README تنها در شاخه‌ی readme-edits اعمال‌ شده‌اند. حالا این شاخه دارای تغییراتی نسبت به شاخه‌ی master است.

گام چهارم: ایجاد درخواست اعمال تغییرات یا pull request

حالا برای اعمال این تغییرات در شاخه‌ اصلی باید درخواست آن را ایجاد کنید. pull request هسته‌ تمام همکاری‌ها در گیت‌هاب را تشکیل می‌دهد. با ارسال چنین درخواستی، شما از صاحب شاخه می‌خواهید که تغییرات انجام‌شده توسط شما را بررسی و در صورت صلاحدید به شاخه‌ی اصلی اضافه کند. درخواست‌های اعمال تغییرات تغییرات بین دو شاخه را نمایش می‌دهند. تغییرات، حذف و اضافه‌ها در رنگ‌های سبز و قرمز نشان داده می‌شوند.

با استفاده از سیستم mention در گیت‌هاب می‌توانید در سیستم پیام‌ pull request خود از سایر افراد یا تیم‌ها درخواست کنید که درباره‌ی ویرایش‌های شما نظر بدهند.

شما می‌توانید درخواست اعمال تغییرات را برای خود نیز ارسال کنید. یعنی وقتی تغییری را به‌طور کامل در شاخه‌ی فرعی انجام دادید، می‌توانید برای تلفیق آن در شاخه‌ی اصلی از pull request استفاده کنید.

گام پنجم: پذیرش درخواست تلفیق تغییرات اعمال‌شده

در این گام پایانی، نحوه‌ی تلفیق تغییرات شاخه‌ی فرعی در شاخه‌ی master را بررسی می‌کنیم.

  • روی دکمه‌ی سبزرنگ Merge pull request کلیک کنید تا تغییرات شما در شاخه‌ی اصلی اعمال شوند.آموزش گیت هاب
  • روی Confirm merge کلیک کنید.
  • حالا که تغییرات را اعمال کرده‌اید، می‌توانید با استفاده از دکمه‌ی Delete branch شاخه‌ی فرعی را حذف کنید.

    آموزش گیت هاب

تعدادی از اصطلاحات رایج در گیت‌هاب

آموزش گیت هاب

در تصویر فوق صفحه‌ی اصلی مربوط به یک پروژه را می‌بینید. در مستطیل شماره‌ی یک نام پروژه، تعداد افرادی که در حال تماشای آن هستند، تعداد افرادی که با ستاره دادن آن را ارزیابی کرده‌اند، تعداد دفعاتی که این پروژه توسط توسعه‌دهندگان دیگر برای مشارکت در پروژه آن را کپی‌برداری شده است. در مستطیل شماره‌ی 2 تعداد کامیت‌های اعمال‌شده در شاخه‌ی فعلی، تعداد شاخه‌های موجود، تعداد نسخه‌های منتشرشده و تعداد مشارکت‌کنندگان در پروژه نشان داده شده است. در مستطیل شماره‌ی 3 نوار انتخاب شاخه را می‌بینید که در زیر آن فایل‌های مهم پروژه به همراه زمان آخرین باری که تغییری در آن‌ها اعمال‌شده است قرار دارد.

در قسمت راست تصویر و در مستطیل شماره‌ی 4 مفاهیمی کلیدی را مشاهده می‌کنید که در زیر به توضیح آن‌ها می‌پردازیم.

  • کد (Code): حالت نمایشی که به‌صورت پیش‌فرض در آن قرار دارید و فایل‌های پروژه به شما نمایش داده می‌شوند.
  • مسائل (Issues): چنان‌چه شما یا هم‌تیمی‌های شما بخواهند مشکلی را در نرم‌افزار گزارش کنند، یا درخواست افزودن قابلیت یا مسائلی این‌چنینی را مطرح کنند، از این گزینه استفاده می‌کنند.
  • ویکی (Wiki): امکانی است برای ثبت جزئی‌تر پروژه نسبت به آن‌چه در README.md می‌آید.
  • ضربان (Pulse): خلاصه‌ای از آمار پروژه شامل مسائل مطرح‌شده، حل‌شده و حل‌نشده که نشانگر میزان فعال بودن پروژه است.
  • نمودارها (Graphs): پیشرفت پروژه در طول زمان شامل روزهای پرکار و زمان‌هایی که پروژه رها شده و بی‌تغییر مانده است نشان می‌دهد.

و نهایتا در همان سمت راست تصویر لینک دسترسی به مخزن را می‌بینید که اگر قصد داشته باشید پروژه‌ای را کلون کنید، یعنی نسخه‌ای از آن را برای خود کپی کنید، می‌توانید از طریق این آدرس اقدام کنید.

حالا با کلیک روی قسمت commits نگاهی به سوابق کامیت‌ها می‌اندازیم. در این قسمت کامیت‌ها را به ترتیب جدیدترین به قدیمی‌ترین مشاهده می‌کنید. در سمت چپ توضیح مختصری در خصوص کامیت، نام سازنده‌ی آن و تاریخی که ساخته شده است می‌بینید. در سمت راست، نسخه‌ی کوتاه هش مربوط به کامیت و لینک ورود به این کامیت قرار دارد.

روی هش کامیت کلیک کنید تا تغییراتی که به واسطه‌ی آن اعمال می‌شود ببینید. در مثال ما تغییرات نظیر به نظیر فایل README و فایل Version.php یک پروژه بررسی شده است. در سمت چپ مواردی که در مقایسه با نسخه‌ی قبل حذف شده‌اند می‌بینید و در سمت راست آن‌چه در این نسخه اضافه شده است شاهد هستید. در بالای هر کامیت سمت چپ خلاصه‌ای کوتاه از تغییرات نمایش داده می‌شود.

آموزش گیت هاب

اما قسمت جالب ماجرا این‌جا است؛ نشانگر موس را روی هر یک از قسمت‌های چپ یا راست که قرار دهید آیکونی آبی‌رنگ با علامت مثبت نمایان می‌شود. با کلیک روی آن می‌توانید نظر خود را در خصوص قسمت خاصی از تغییر اعمال‌شده بنویسید. این ویژگی گیت‌هاب از قابلیت‌های فوق‌العاده‌‌ای است که تجربه‌ی کار گروهی را ارتقاء می‌دهد. اگر می‌خواهید راحب کل کامیت نظر بدهید، در پایین آن قسمتی برای ای‌کار در نظر گرفته شده است.

آموزش انتقال پروژه از گیت به گیت‌هاب

حالا قصد داریم پروژه‌ی کوچکی را که در گیت روی آن کار کرده بودیم  در گیت‌هاب بارگذاری کنیم. برای این‌کار ابتدا نیاز به ساخت یک حساب کاربری در گیت‌هاب دارید. توجه داشته باشید در روند ساخت حساب کاربری در گیت‌هاب پس از وارد کردن نام کاربری، ایمیل و پسورد، دو تعرفه پیش روی شما قرار می‌گیرد. در گزینه‌ی اول استفاده از گیت‌هاب رایگان خواهد بود اما نمی‌توانید پروژه‌ی محرمانه بسازید. طبعا گزینه‌ی دوم پولی و با امکان ساخت پروژه‌ی محرمانه یا خصوصی است.

پس از ورود به حساب کاربری خود برای بارگذاری پروژه روی علامت مثبت موجود در بالا گوشه‌ی راست کلیک کنید و در فهرست بازشده New repository را برای راه‌اندازی مخزن جدید انتخاب کنید. در این مرحله فرم مربوط به ساخت پروژه‌ی جدید ظاهر خواهد شد.

در قسمت Repository name یک نام برای مخزن خود وارد کنید. این نام می‌تواند first-project به معنی اولین پروژه باشد. می‌توانید توضیحی نیز در خصوص آن ذکر کنید. مثلا my first Github project به معنی اولین پروژه‌ی من در گیت‌هاب. حالت پروژه با توجه به نوع کاربری شما، public خواهد بود. نهایتا تیک inilialize this repository with a README را بزنید و دو قسمت دیگر را به همان شکل روی None رها کنید. حالا روی Create repository کلیک کنید.

آموزش گیت هاب

در این مرحله به صفحه‌ی راه‌انداری سریع هدایت خواهید شد. این صفحه امکان بارگذاری پروژه‌ی گیت را به ما خواهد داد. برای انجام این‌کار اولین سطر زیر or push an existing repository from the command line... را کپی کنید و آن را در ترمینال یعنی همان‌جایی که تا کنون روی آن کار می‌کردیم پیست کنید.

آموزش گیت هاب

این‌کار به ما خروجی نخواهد داد. حالا همین کار را برای سطر دوم انجام دهید. در این مرحله تغییرات ما به گیت‌هاب منتقل می‌شود و خروجی مشابه آن‌چه در تصویر زیر می‌بینید خواهد بود. حالا در مرورگر خود صفحه‌ی گیت‌هاب را ریفرش کنید. فایل‌های README.md و index.php به‌عنوان اولین فایل‌های پروژه نمایش داده می‌شوند و محتویات README.md در پایین صفحه نمایان می‌شود.

آموزش گیت هاب

لاراول
فقط
خوش آمدید!
ایجاد حساب کاربری