مهندسی نرم‌افزار و ابزارها

دوره‌ی کنترل نسخه با Git و GitHub

Version Control with Git & GitHub

آموزش Git و GitHub از مبانی تا همکاری تیمی؛ شامل ثبت تغییرها، ایجاد و ادغام شاخه‌ها، کار با Pull Request و به‌کارگیری روندهای کاری رایج در تیم‌های نرم‌افزاری. این دوره به زبان فارسی و به‌صورت حضوری یا آنلاین برای تیم‌های سازمانی برگزار می‌شود.

سطح
مقدماتی تا متوسط
مدت پیشنهادی
۳ روز (۲۴ ساعت)
درس در ۹ بخش
۴۵
شیوه‌ی برگزاری
حضوری یا آنلاین

آنچه شرکت‌کنندگان می‌آموزند

  • ثبت کار با Commitهایی که بعدها به‌راحتی قابل فهم باشند
  • ایجاد و ادغام شاخه‌ها با اطمینان، از جمله رفع تعارض‌ها
  • کار با مخزن‌های راه دور، Pull Request و بازبینی کد در GitHub
  • بازنویسی و بازیابی تاریخچه بدون ازدست‌دادن کار
  • خودکارسازی بررسی‌ها با GitHub Actions

کار عملی: کار با مخزن‌ها، شاخه‌ها و Pull Requestهای واقعی

سرفصل دوره

سرفصل شامل ۹ بخش و ۴۵ درس است. برنامه‌ی پیشنهادی ۳ روز آموزشی (۲۴ ساعت) است؛ مدت نهایی، تمرین‌ها و شیوه‌ی ارزیابی بر اساس سطح و نیاز تیم پیش از برگزاری تعیین می‌شوند.

  1. ۱

    مبانی کنترل نسخه

    ۵ درس
    • کنترل نسخه چیست
    • نصب و پیکربندی Git
    • اولین مخزن
    • ثبت تغییرات
    • پروژه‌ی راهنمادار: کنترل نسخه برای پروژه‌ی SkyLog
  2. ۲

    کار با تاریخچه

    ۵ درس
    • خواندن تاریخچه
    • بررسی تغییرات
    • نادیده‌گرفتن فایل‌ها
    • بازگرداندن تغییرات
    • پروژه‌ی راهنمادار: مرتب‌کردن یک مخزن آشفته
  3. ۳

    شاخه‌سازی و ادغام

    ۵ درس
    • مفهوم شاخه
    • ادغام
    • تعارض در ادغام
    • کنارگذاشتن موقت کار ناتمام (Stash)
    • پروژه‌ی راهنمادار: دو قابلیت، یک تعارض
  4. ۴

    GitHub و مخزن‌های راه دور

    ۵ درس
    • GitHub چیست و ساخت مخزن
    • اتصال مخزن محلی به مخزن راه دور
    • همگام‌سازی با Fetch، Pull و Push
    • ساختار یک مخزن
    • پروژه‌ی راهنمادار: انتشار SkyLog در GitHub
  5. ۵

    همکاری با Pull Request

    ۵ درس
    • مدل Fork و Pull Request
    • ایجاد Pull Request
    • بازبینی کد
    • همگام نگه‌داشتن Fork
    • پروژه‌ی راهنمادار: افزودن یک قابلیت از طریق Pull Request
  6. ۶

    روندهای کاری تیمی

    ۵ درس
    • راهبردهای شاخه‌بندی
    • قراردادهای Commit و نوشتن پیام‌های خوب
    • همکاری بدون تداخل در کار یکدیگر
    • برچسب‌ها و نسخه‌های انتشار
    • پروژه‌ی راهنمادار: چرخه‌ی کامل از قابلیت تا انتشار
  7. ۷

    بازنویسی و بازیابی تاریخچه

    ۵ درس
    • Rebase در برابر Merge
    • Rebase تعاملی
    • Cherry-Pick
    • بازیابی: reflog و bisect
    • پروژه‌ی راهنمادار: مرتب‌سازی و بازیابی یک شاخه
  8. ۸

    خودکارسازی با GitHub

    ۵ درس
    • Issueها و پیگیری پروژه
    • GitHub Actions: مبانی یکپارچه‌سازی مداوم
    • محافظت از شاخه و بررسی‌های الزامی
    • GitHub Pages و خودکارسازی انتشار
    • پروژه‌ی راهنمادار: افزودن CI و قالب Issue
  9. ۹

    تسلط، ایمنی و پروژه‌ی پایانی

    ۵ درس
    • تسلط بر پیکربندی
    • امنیت و پاکیزگی مخزن
    • راهنمای عیب‌یابی
    • پروژه‌ی پایانی بخش ۱: ساخت و انتشار مخزن
    • پروژه‌ی پایانی بخش ۲: همکاری تیمی

شیوه‌های برگزاری

حضوری در محل سازمان

برگزاری در محل سازمان، همراه با تمرین روی ابزارها و نمونه‌های مرتبط با کار تیم. زمان و مکان با هماهنگی تعیین می‌شود.

آنلاین و زنده

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

کارگاه کوتاه یا دوره‌ی جامع

از کارگاه یک‌روزه برای یک موضوع مشخص تا برنامه‌ی چندماهه برای آماده‌سازی تیم در یک مسیر تخصصی.

دوره‌های مرتبط

همه‌ی دوره‌ها

برگزاری دوره‌ی کنترل نسخه با Git و GitHub برای تیم سازمان

تعداد و سطح شرکت‌کنندگان و زمان‌بندی مدنظر را ارسال کنید تا برنامه‌ی دوره بر همان اساس تنظیم شود.