Middle+
Hogyan szervezték meg a kód-áttekintési folyamatot a csapatukban?
sobes.tech MI
Válasz az MI-től
A verziókezelő rendszer Git és tárolókezelő platformok (például Bitbucket vagy GitLab) segítségével közös fejlesztést alkalmaztunk. A kódellenőrzési folyamat a következőképpen szerveződött:
- Ág létrehozása: A fejlesztő külön ágat hoz létre egy új funkció vagy hibajavítás számára (
git checkout -b feature/my-new-feature). - Fejlesztés és commitok: A változtatásokat az ágon végzik, amelyeket commitokkal rögzítenek (
git add .,git commit -m "Első funkció megvalósítása"). - Push a távoli tárhelyre: Az ág a távoli tárhelyre kerül (
git push origin feature/my-new-feature). - Pull/Merge Request létrehozása: A fejlesztő létrehoz egy Pull Request-et (Bitbucket-en) vagy Merge Request-et (GitLab-en), megadva a célágat (például
developvagymain). A leírásban röviden összefoglalják a változtatásokat, hivatkozásokat a feladatokra a trackerben (Jira, Trello stb.), valamint csatolt fájlokat (képernyőképek, videók, diagramok). - Átnézők kijelölése: Egy vagy két fejlesztő kijelölése az ellenőrzéshez.
- Áttekintési folyamat: Az áttekintők megvizsgálják a Pull/Merge Request-ben lévő változtatásokat. Hagyhatnak megjegyzéseket, javasolhatnak fejlesztéseket, kérdéseket tehetnek fel.
// Példa megjegyzésre az áttekintés során function fetchData() { // Itt érdemes lehet hibakezelést hozzáadni return fetch('/api/data'); } - Változtatások a review eredményeként: A fejlesztő elvégzi a szükséges módosításokat a megjegyzések alapján, és új commitokat készít.
- Pull/Merge Request frissítése: A változtatások automatikusan megjelennek a Pull/Merge Request-ben, miután push-olták a távoli tárhelyre.
- Ismételt áttekintés: Az áttekintők újra megvizsgálják a változtatásokat, és jóváhagyják azokat.
- Ág összevonása: Jóváhagyás után az ág összevonásra kerül a célággal (általában automatikusan a platform által, a CI/CD pipeline sikeres lefutása után).
Emellett CI/CD pipeline-okat is használtunk, amelyek automatikusan futtatják az egységteszteket, a statikus kód-analízist (ESLint, Prettier), valamint a projekt buildelését az összevonás előtt, így korai szakaszban észlelve a hibákat.
A sikeres review kritériumai közé tartozott:
- A feladat követelményeinek való megfelelés.
- A csapat kódstílusának betartása.
- Kritikus logikához tartozó egységtesztek megléte.
- Nyilvánvaló hibák és "kötőelemek" hiánya.
- A kód érthetősége a többi csapattag számára.