Kādus darba modeļus ar Git esat izmantojis?
sobes.tech AI
Atbilde no AI
-
Git-flow: Izmantots projektos ar skaidriem išleidimo ciklam. Patogu valdyti funkcijų įrašymą, klaidų taisymą ir išleidimų paruošimą. Sukuria šakas
feature,develop,release,hotfix,master. -
GitHub flow: Izmantots projektos, kur prioritetu teikiami dažni, maži išleidimai. Vienkšā modeļa, balstīta uz vienu galveno šaku (
mainvaimaster) un katras funkcijas vai labojuma šakas, kurios tūlīt tiek apvienotas ar galveno šaku pēc pārskatīšanas. -
Trunk-based development: Izmantots projektos, kuriem nepieciešama augsta integrācijas biežums un nepārtraukta izvietošana. Izstrādātāji veic izmaiņas tieši galvenajā šakā (
trunk) vai īslaicīgās šakās, kas ātri tiek apvienotas atpakaļ. Galvenais elements — Feature Toggles.
Papildus šiem galvenajiem modeļiem, tika izmantots:
-
Rebase vs Merge: Atkarībā no situācijas un komandas vienošanās, tika izmantots
git rebase, lai saglabātu tīru vēsturi vietējās šakās pirms apvienošanas, ungit merge --no-ff, lai saglabātu skaidru apvienošanas vēsturi galvenajā šakā.# Rebase piemērs git checkout feature/nova-feature git pull --rebase origin main # Konfliktu risināšana, ja ir git push -f origin feature/nova-feature # Vai pull request apvienošanai ar galveno šaku# Merge --no-ff piemērs git checkout main git merge --no-ff feature/nova-feature -m "Merge feature nova-feature into main" git push origin main -
Squash and Merge: Bieži tiek izmantots funkciju šaku apvienošanai galvenajā šakā, izmantojot Pull Request. Tas ļauj apvienot vairākus komitus no funkciju šakas vienā tīrā komitā galvenajā šakā.
# Squash merge piemērs ar Git platformu (GitHub, GitLab) # Parasti tiek veikts, apstiprinot Pull Request. -
Cherry-picking: Tiek izmantots, lai pārvietotu konkrētus komitus starp šakām, piemēram, atpakaļportējot labojumus no galvenās šakās uz izlaišanas vai testēšanas šakām.
# Cherry-pick piemērs git checkout release/v1.2 git cherry-pick <commit_hash>