Sobes.tech
Middle+

Ako bola vo vašom tíme organizovaná procedúra revízie kódu?

sobes.tech AI

Odpoveď od AI

Použili sme spoločný vývoj pomocou systému kontroly verzií Git a platformy na správu repozitárov (napríklad Bitbucket alebo GitLab). Proces code review bol organizovaný nasledovne:

  1. Vytvorenie vetvy: Vývojár vytvorí samostatnú vetvu pre novú funkciu alebo opravu chyby (git checkout -b feature/my-new-feature).
  2. Vývoj a commity: V vetve sa vykonávajú zmeny, ktoré sa zaznamenávajú commitmi (git add ., git commit -m "Initial feature implementation").
  3. Push do vzdialeného repozitára: Vetva sa odošle do vzdialeného repozitára (git push origin feature/my-new-feature).
  4. Vytvorenie Pull/Merge požiadavky: Vývojár vytvorí Pull Request (v Bitbucket) alebo Merge Request (v GitLab), uvádza cieľovú vetvu (napríklad, develop alebo main). V popise sa uvádza stručný popis zmien, odkazy na úlohy v trackerovi (Jira, Trello atď.) a priložené súbory (snímky obrazovky, videá, diagramy).
  5. Priradenie reviewerov: Priraďujú sa jeden alebo dvaja vývojári z tímu na vykonanie review.
  6. Proces review: Revieweri prezerajú zmeny v Pull/Merge požiadavke. Môžu zanechávať komentáre, navrhovať vylepšenia, klásť otázky.
    // Príklad komentára počas review
    function fetchData() {
      // Možno by bolo vhodné pridať spracovanie chýb pri požiadavke dát
      return fetch('/api/data');
    }
    
  7. Vykonanie zmien na základe review: Vývojár vykoná potrebné zmeny vo svojej vetve na základe komentárov reviewerov a vytvorí nové commity.
  8. Aktualizácia Pull/Merge požiadavky: Zmeny sa automaticky zobrazia v Pull/Merge požiadavke po pushnutí do vzdialeného repozitára.
  9. Opätovný review: Revieweri opäť prezerajú zmeny a dávajú schválenie.
  10. Merge vetvy: Po získaní schválenia sa vetva zlúči do cieľovej vetvy (zvyčajne automaticky platformou po prechode CI/CD pipeline).

Tiež sme používali CI/CD pipeline na automatické spustenie jednotkových testov, statickú analýzu kódu (ESLint, Prettier) a zostavenie projektu pred zlúčením, čo pomáhalo odhaľovať chyby v raných fázach.

Kritériá pre úspešné prechádzanie review zahŕňali:

  • Zhodu s požiadavkami úlohy.
  • Dodržiavanie kódového štýlu tímu.
  • Prítomnosť jednotkových testov pre kritickú logiku.
  • Absenciu zjavných chýb a "kostier".
  • Zrozumiteľnosť kódu pre ostatných členov tímu.