Aké vzory práce s Git ste použili?
sobes.tech AI
Odpoveď od AI
-
Git-flow: Používa sa pre projekty s jasne definovaným cyklom vydania. Je vhodný na správu funkcií, opráv chýb a prípravu na vydanie. Vytvára vetvy
feature,develop,release,hotfix,master. -
GitHub flow: Používal sa v projektoch, kde je priorita časté, malé vydania. Jednoduchý model založený na jednej hlavnej vetve (
mainalebomaster) a vetvách pre každú funkciu alebo opravu, ktoré sa okamžite zlúčia do hlavnej vetvy po revízii. -
Vývoj založený na trunk: Praktizovaný v projektoch, ktoré vyžadujú vysokú frekvenciu integrácie a kontinuálne nasadzovanie. Vývojári robia zmeny priamo v hlavnej vetve (
trunk) alebo v krátkodobých vetvách, ktoré sa rýchlo zlúčia späť. Kľúčový prvok — Feature Toggles.
Okrem týchto hlavných vzorov sa používali:
-
Rebase vs Merge: V závislosti od situácie a dohôd v tíme sa používalo
git rebasena udržanie čistej histórie commitov v lokálnych vetvách pred zlúčením, agit merge --no-ffna zachovanie explicitnej histórie zlúčení v hlavnej vetve.# Príklad rebase git checkout feature/nova-funkcia git pull --rebase origin main # Riešenie konfliktov, ak sú git push -f origin feature/nova-funkcia # Alebo pull request na zlúčenie do main# Príklad merge --no-ff git checkout main git merge --no-ff feature/nova-funkcia -m "Zlúčenie feature/nova-funkcia do main" git push origin main -
Squash and Merge: Často sa používa pri zlúčení funkčných vetiev do hlavnej vetvy cez Pull Request. Umožňuje zlúčiť viacero commitov z vetvy funkcie do jedného čistého commitu v hlavnej vetve.
# Príklad squash merge cez rozhranie Git platformy (GitHub, GitLab) # Zvyčajne sa vykonáva pri potvrdení Pull Request. -
Cherry-picking: Používa sa na presun konkrétnych commitov medzi vetvami, napríklad na backportovanie opráv z hlavnej vetvy do vydávacej alebo staging vetvy.
# Príklad cherry-pick git checkout release/v1.2 git cherry-pick <commit_hash>