Sobes.tech
Junior

Pulsuz GitLab-də birləşmə sorğularını necə yoxlamaq olar?

sobes.tech Süni İntellekt

AI-dan cavab

İşə başlamadan əvvəl, GitLab-in pulsuz versiyasında merge sorğularını yoxlamaq üçün aşağıdakı yanaşmaları istifadə edirik:

  1. Kod nəzərdən keçirilməsi:

    • İnkişaf etdiricilər dəyişikliklər əlavə edir.
    • Merge sorğusu yaradırlar.
    • İş yoldaşları kodu nəzərdən keçirir, şərhlər qoyur və təkmilləşdirmələr təklif edir.
  2. CI/CD boru xətti:

    • Merge sorğusu yaradıldıqda və ya yeniləndikdə avtomatik olaraq bir boru xətti işə düşür.
    • Boru xəttinin mərhələləri aşağıdakılardır:
      • Linting və formatlama: Kodlaşdırma standartlarına uyğunluğu yoxlama.
      • Layihənin qurulması: Tərtib, artefaktların yığılması.
      • Birlik testləri: Fərdi komponentlərin yoxlanması.
      • İnteqrasiya testləri: Komponentlər arasındakı qarşılıqlı əlaqənin yoxlanması.
  3. Avtomatik yoxlamalar:

    • Statik kod analizi: Potensial problemləri aşkar etmək üçün alətlər (təhlükəsizlik, performans, səhvlər).
    • Asılılıqların yoxlanması: Zərərli kitabxanaların aşkarlanması.
    • Kodun testlərlə əhatə olunmasının yoxlanması: Testlərlə əhatə olunan kod faizinin idarə olunması.

Əsas yoxlamaları işə salmaq üçün .gitlab-ci.yml faylının nümunəsi:

stages:
  - build
  - test

build:
  stage: build
  script:
    - echo "Layihə qurulur..."
    # Buraya öz qurma əmrlərinizi əlavə edin (məs., mvn clean package, npm install)
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Merge sorğusu hadisəsi zamanı işə düşür

test:
  stage: test
  script:
    - echo "Testlər işlədilir..."
    # Buraya öz test əmrlərinizi əlavə edin (məs., mvn test, npm test)
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Merge sorğusu hadisəsi zamanı işə düşür

Bu metodlar kod keyfiyyətini və əsas depozitarın sabitliyini təmin edir, hətta pulsuz GitLab versiyasında belə. Merge sorğusunun təsdiqi bütün yoxlamalar uğurla keçdikdən və kifayət qədər iş yoldaşlarının təsdiqlərini aldıqdan sonra həyata keçirilir.