داکر کانتینر Docker Container و CI/CD برای مهندسین شبکه

0 از 25 درس کامل شد (0%)

CI/CD with Forgejo

​۲۴. محافطت از تغییرات در Repository و ایجاد روند درخواست تغییرات Pull request

در این درس می‌بینیم که به‌صورت پیش‌فرض، repositoryهای ایجاد شده در Forgejo محافظت نمی‌شوند و هر گونه تغییر، چه عمدی و چه سهوی، امکان‌پذیر است.

سپس شاخه اصلی Repository یعنی main را محافظت می‌کنیم به‌طوری که هر تغییری باید در قالب یک Pull Request ارائه شود و حداقل یک نفر دیگر آن را بررسی و تایید کند.

هر تغییر جدید در قالب یک branch جدید در repository ذخیره می‌شود و شاخه اصلی تحت تأثیر قرار نمی‌گیرد. پس از بررسی و تأیید تغییرات، امکان دارد branch جدید با شاخه اصلی merge شود و تغییرات در شاخه اصلی اعمال شود.

معمولاً برای بررسی تغییرات، workflowهای اتوماتیک نوشته می‌شوند که تغییرات را از روش‌های مختلف بررسی و تست می‌کنند تا مطمئن شویم پس از اعمال آن‌ها به شاخه اصلی، هیچ‌گونه مشکلی ایجاد نخواهد شد.

مواردی که در این درس بحث و پیاده‌سازی می‌شوند عبارتند از

  • ایجاد محافظت برای شاخه اصلی (main) در Repository
  • ارائه تغییرات در قالب Pull Request
  • بررسی و تأیید تغییرات توسط دیگر اعضای تیم
  • ایجاد و استفاده از branchهای جدید برای تغییرات بدون تأثیر روی شاخه اصلی
  • ادغام (merge) تغییرات پس از بررسی و تأیید