Milliseid töömustreid Gitiga kasutasite?
sobes.tech AI
Vastus AI-lt
-
Git-flow: Kasutatud projektide puhul, millel on selgelt väljendunud väljalaske tsükkel. Mugav funktsiooni registreerimise, veaparanduste ja väljalaske ettevalmistamise juhtimiseks. Loob harud
feature,develop,release,hotfix,master. -
GitHub flow: Kasutatud projektide puhul, kus eelistatakse sagedasi, väikeseid väljalaskeid. Lihtne mudel, mis põhineb ühel põhiharul (
mainvõimaster) ja iga funktsiooni või paranduse harul, mis kohe pärast ülevaatust ühendatakse põhiharuga. -
Trunk-based development: Kasutatud projektide puhul, kus on vaja kõrget integreerimise sagedust ja pidevat juurutamist. Arendajad muudatused teevad otse põhiharusse (
trunk) või lühiajalistesse harudesse, mis kiiresti tagasi ühendatakse. Põhielement — Feature Toggles.
Lisaks nendele põhimudelitele kasutati:
-
Rebase vs Merge: Olenevalt olukorrast ja meeskonna kokkuleppest kasutati
git rebase, et hoida puhas ajalugu kohalikes harudes enne ühendamist, ninggit merge --no-ff, et säilitada selge ühendamise ajalugu põhiharus:# Rebase näide git checkout feature/nova-feature git pull --rebase origin main # Konfliktide lahendamine, kui on git push -f origin feature/nova-feature # Või pull requesti kaudu ühendamiseks mainiga# Merge --no-ff näide git checkout main git merge --no-ff feature/nova-feature -m "Merge feature nova-feature into main" git push origin main -
Squash and Merge: Sageli kasutatakse funktsiooniharude ühendamisel põhiharuga Pull Requesti kaudu. See võimaldab ühendada mitu commit-i funktsiooniharu üheks puhtaks commit-iks põhiharus:
# Squash merge näide Git platvormil (GitHub, GitLab) # Tavaliselt teostatakse Pull Requesti kinnitamisel. -
Cherry-picking: Kasutatakse konkreetsete commit-ide teisaldamiseks harudest, näiteks paranduste backportimiseks põhiharu ja väljalaske või testimise harudesse:
# Cherry-pick näide git checkout release/v1.2 git cherry-pick <commit_hash>