< Git
A git hatékony használata
Szerző: Sallai András
Copyright © 2020, Sallai András
Szerkesztve: 2020, 2022, 2023
-
-
Előfeltevések
Négy ember fog dolgozni a projekten:
János – projekt vezető
Mari – fejlesztő
Kati – fejlesztő
Béla – fejlesztő
Fejlesztési folyamat
Kezdésnek, a master ágból létrehozunk egy release vagy egy dev nevű ágat.
A fejlesztők ebből ágaztatják el saját munkájukat.
A fejlesztő a következő feladattípusokból választhat:
feature
enhance
cleanup
refactor
fix – javítás
hotfix – sürgős javítás
Ezeket szerepeltetjük az ág nevében, de hozzáadjuk az aktuális munkát leíró nevet is. A következő két ábrán ennek két példáját láthatjuk.
Ugyanaz más nevekkel:
Master branch
A master branch-be senki nem ír kódot.
Ez csak egy másolat arról a kódról, ami termékként ki van adva.
A projekt vezető sem ír a master branchbe.
Mindenki máshol írja az aktuális kódot.
Release branch
A master branch-ből készítünk egy release branch-et.
Minden kód itt lesz.
A release branch-ben a release csak egy prefix, amit release/ formában használunk.
Legyen példul release/triangle
Előfordulhat, hogy azonos kódbázison több projekt is fut. Ezért használjuk release/ prefixumot
Funkció branch
Az alkalmazásba épített minden szolgáltatás egy funkcióként van megvalósítva.
A funkció branch olyan mint a többi, de feature/ formában használjuk.
János megkéri Bélát,
János megkéri Marit,
János megkéri Katit,
Béla befejezte a feature/store-t, akkor elküldi a kódját a release/triangle branch-be.
Béla pull request kérést intéz.
Pull request
A pull request fogalmat a github webes felületén vezették be.
A Pull request nem tévesztendő össze a git pull paranccsal.
A fejlesztő nem tudja közvetlenül a kiadási ágba küldeni a kódot.
A műszaki vezetőnek (vezető fejlesztő) felül kell vizsgálnia a kódot, mielőtt a release ágba kerül.
A technikai ellenőrzés után, a műszaki vezető beolvasztja a kódot a release ágba.
Ha minden funkció kész, akkor összeolvasztásra kerülnek, majd mehet a master ágba.
Kezdés
A touch parancs unix alapú rendszereken, Windowson pedig Git Bash-ben áll
rendelkezésre.
Készítsünk egy állományt kezdésnek:
touch main.c
Ha az adott gépen nincs touch parancs, bármivel létrehozhatjuk az állományt.
Készítsük el a git tárolót és a kezdő commitot.
git init
git add main.c
git commit -m "Kezdés"
A master ágban minimum egy commit-nak lennie kell, mielőtt létrehozunk egy új branchet.
Release ág
Hozzuk létre a release ágat, majd álljunk át.
git branch release/triangle
git checkout release/triangle
Hozzunk létre egy kezdő állományt és commitot:
touch store.c
git add store.c
git commit -m "A store.c létrehozva"
Feature ág
git branch feature/store
git checkout feature/store
nano store.c
git add store.c
git commit -m 'A store() függvény kész'
Forrás