Jaké vzory práce s Gitem jste použili?
sobes.tech AI
Odpověď od AI
-
Git-flow: Používá se pro projekty s jasně definovaným cyklem vydání. Je vhodný pro správu funkcí, oprav chyb a přípravu vydání. Vytváří větve
feature,develop,release,hotfix,master. -
GitHub flow: Používal se u projektů, kde je priorita časté, malé vydání. Jednoduchý model založený na hlavní větvi (
mainnebomaster) a větvích pro každou funkci nebo opravu, které se ihned slučují do hlavní větve po revizi. -
Vývoj založený na trunku: Praktikován u projektů, které vyžadují vysokou frekvenci integrace a kontinuální nasazení. Vývojáři provádějí změny přímo v hlavní větvi (
trunk) nebo v krátkodobých větvích, které se rychle slučují zpět. Klíčový prvek — Feature Toggles.
Kromě těchto hlavních vzorů se používalo:
-
Rebase vs Merge: V závislosti na situaci a dohodách v týmu se používalo
git rebasek udržení čisté historie commitů na lokálních větvích před sloučením, agit merge --no-ffk zachování explicitní historie slučování v hlavní větvi.# Příklad rebase git checkout feature/nova-funkce git pull --rebase origin main # Vyřešení konfliktů, pokud jsou git push -f origin feature/nova-funkce # Nebo pull request na sloučení do main# Příklad merge --no-ff git checkout main git merge --no-ff feature/nova-funkce -m "Sloučení feature/nova-funkce do main" git push origin main -
Squash and Merge: Často používané při slučování větví funkcí do hlavní větve přes Pull Request. Umožňuje sloučit několik commitů z větve funkce do jednoho čistého commitu v hlavní větvi.
# Příklad squash merge přes rozhraní Git platformy (GitHub, GitLab) # Obvykle se provádí při potvrzení Pull Request. -
Cherry-picking: Používá se k přenosu konkrétních commitů mezi větvemi, například pro backportování oprav z hlavní větve do vydávací nebo staging větve.
# Příklad cherry-pick git checkout release/v1.2 git cherry-pick <commit_hash>