Milyen mintákat használtál a Git-tel való munkához?
sobes.tech MI
Válasz az MI-től
-
Git-flow: Egyértelműen meghatározott kiadási ciklusú projektekhez használt. Hasznos funkciófixek, hibajavítások és kiadások előkészítésének kezelésére. Létrehozza az
feature,develop,release,hotfix,masterágakat. -
GitHub flow: Gyakran és kis méretű kiadásokra helyezett prioritással alkalmazott modell. Egyszerű modell, amely egy fő ágra (
mainvagymaster) és minden funkció vagy javítás számára külön ágakat használ, amelyek az áttekintés után azonnal összeolvadnak a fő ággal. -
Trunk-alapú fejlesztés: Magas integrációs és folyamatos telepítési igényű projektekhez alkalmazott. A fejlesztők közvetlenül a fő ágba (
trunk) vagy rövid életű ágakba módosítanak, amelyek gyorsan visszafusolódnak. Kulcselem — Feature Toggles.
Ezeken kívül a fő minták mellett használták:
-
Rebase vs Merge: A helyzettől és a csapat megállapodásaitól függően, a
git rebase-t használták a helyi ágak tiszta történetének fenntartására a merge előtt, és agit merge --no-ff-t a nyilvánvaló merge-történet megőrzésére.# Rebase példa git checkout feature/új-funkció git pull --rebase origin main # Konfliktusok megoldása, ha vannak git push -f origin feature/új-funkció # Vagy pull request a merge-hez main-be# Merge --no-ff példa git checkout main git merge --no-ff feature/új-funkció -m "Feature új-funkció merge a main-be" git push origin main -
Squash and Merge: Gyakran alkalmazott a funkcióágak fő ágba való egyesítésénél Pull Request segítségével. Lehetővé teszi, hogy több commitot egyetlen tiszta commitba egyesítsenek a fő ágon.
# Squash merge példa Git platformon (GitHub, GitLab) # Általában a Pull Request megerősítésekor történik. -
Cherry-picking: Kifejezetten kiválasztott commitokat mozgatnak át ágak között, például a fő ágból a kiadási vagy staging ágakba történő visszavitelhez.
# Cherry-pick példa git checkout release/v1.2 git cherry-pick <commit_hash>