Podcast
Questions and Answers
Mi történik a merge során, ha a HEAD és a célpont ág elágazik egymástól?
Mi történik a merge során, ha a HEAD és a célpont ág elágazik egymástól?
Új commit jön létre, amelynek két szülője van, ez a merge commit.
Milyen esetekben lép fel merge konfliktus a git használata során?
Milyen esetekben lép fel merge konfliktus a git használata során?
Merge konfliktus lép fel, ha átfedés van a változtatásokban, például ha ugyanazon fájl különböző sorain történt módosítás.
Mit jelentenek az ágak (branch) a git verziókövetésben?
Mit jelentenek az ágak (branch) a git verziókövetésben?
Az ágak a munka szétválasztását és párhuzamosítását segítik, és névvel ellátott pointerek a gráfban.
Milyen tulajdonságokkal rendelkezik a merge commit?
Milyen tulajdonságokkal rendelkezik a merge commit?
Signup and view all the answers
Milyen lépéseket kell követni a merge konfliktus feloldása után?
Milyen lépéseket kell követni a merge konfliktus feloldása után?
Signup and view all the answers
Melyik évben készült el a git első verziója és ki volt a készítője?
Melyik évben készült el a git első verziója és ki volt a készítője?
Signup and view all the answers
Miért ajánlott a parancssor használata a git tanulása során?
Miért ajánlott a parancssor használata a git tanulása során?
Signup and view all the answers
Milyen típusú fájlokat szoktak kihagyni a .gitignore fájlban?
Milyen típusú fájlokat szoktak kihagyni a .gitignore fájlban?
Signup and view all the answers
Milyen online git tárolókat ismerünk?
Milyen online git tárolókat ismerünk?
Signup and view all the answers
Milyen előnnyel jár a Git Bash használata Windows alatt?
Milyen előnnyel jár a Git Bash használata Windows alatt?
Signup and view all the answers
Mi a különbség a --soft
és a --hard
reset között a gitben?
Mi a különbség a --soft
és a --hard
reset között a gitben?
Signup and view all the answers
Mit jelent a git reset --hard HEAD~1
parancs?
Mit jelent a git reset --hard HEAD~1
parancs?
Signup and view all the answers
Mi az alapvető elv a git flow használatakor a feature branch-ekkel kapcsolatban?
Mi az alapvető elv a git flow használatakor a feature branch-ekkel kapcsolatban?
Signup and view all the answers
Mi a git flow előnye a csapatmunkában?
Mi a git flow előnye a csapatmunkában?
Signup and view all the answers
Milyen szerepet játszik a GitLab merge request a csapatmunkában?
Milyen szerepet játszik a GitLab merge request a csapatmunkában?
Signup and view all the answers
Milyen követelményeket lehet meghatározni a GitLab merge request során?
Milyen követelményeket lehet meghatározni a GitLab merge request során?
Signup and view all the answers
Mi a staging area
szerepe a git verziókezelésében?
Mi a staging area
szerepe a git verziókezelésében?
Signup and view all the answers
Hogyan támogathatja a kód átnézése a merge folyamatát a git-ben?
Hogyan támogathatja a kód átnézése a merge folyamatát a git-ben?
Signup and view all the answers
Mi a git log parancs fő funkciója?
Mi a git log parancs fő funkciója?
Signup and view all the answers
Mire szolgál a git log --oneline parancs?
Mire szolgál a git log --oneline parancs?
Signup and view all the answers
Mi a különbség a git log --graph és a git log --oneline parancsok között?
Mi a különbség a git log --graph és a git log --oneline parancsok között?
Signup and view all the answers
Mit jelent a git merge parancs?
Mit jelent a git merge parancs?
Signup and view all the answers
Milyen tényezők befolyásolják a git merge működését?
Milyen tényezők befolyásolják a git merge működését?
Signup and view all the answers
Mit jelent, ha a célpont már szülője a HEAD-nek a git merge során?
Mit jelent, ha a célpont már szülője a HEAD-nek a git merge során?
Signup and view all the answers
Hogyan lehet megtekinteni a teljes gráfot GitLabon?
Hogyan lehet megtekinteni a teljes gráfot GitLabon?
Signup and view all the answers
Milyen információkat tartalmaz a git log outputja?
Milyen információkat tartalmaz a git log outputja?
Signup and view all the answers
Mi az a revízió vagy commit a git rendszerében?
Mi az a revízió vagy commit a git rendszerében?
Signup and view all the answers
Milyen típusú gráfban modellezzük a változásokat a git-ben?
Milyen típusú gráfban modellezzük a változásokat a git-ben?
Signup and view all the answers
Mi a szerepe a HEAD pointernek a git tárolóban?
Mi a szerepe a HEAD pointernek a git tárolóban?
Signup and view all the answers
Mivel jelöljük a változásokat, amelyeket a következő commitba szeretnénk felvenni?
Mivel jelöljük a változásokat, amelyeket a következő commitba szeretnénk felvenni?
Signup and view all the answers
Hogyan nevezzük el a commitokra mutató pointereket a git-ben?
Hogyan nevezzük el a commitokra mutató pointereket a git-ben?
Signup and view all the answers
Mit jelent a headless állapot a git-ben?
Mit jelent a headless állapot a git-ben?
Signup and view all the answers
Milyen információt tartalmaz a git commit az azonosítón kívül?
Milyen információt tartalmaz a git commit az azonosítón kívül?
Signup and view all the answers
Mi a függősége a változások megjelenítésének az ágak és commitok között?
Mi a függősége a változások megjelenítésének az ágak és commitok között?
Signup and view all the answers
Mi a célja a verziókövetésnek a szoftverfejlesztésben?
Mi a célja a verziókövetésnek a szoftverfejlesztésben?
Signup and view all the answers
Mik azok a tárolók (repositories) a verziókövető rendszerekben?
Mik azok a tárolók (repositories) a verziókövető rendszerekben?
Signup and view all the answers
Mi a különbség a lokális és a távoli tároló között?
Mi a különbség a lokális és a távoli tároló között?
Signup and view all the answers
Mik jellemzik a centralizált verziókövető rendszereket?
Mik jellemzik a centralizált verziókövető rendszereket?
Signup and view all the answers
Mi a hátránya a centralizált verziókövető rendszereknek?
Mi a hátránya a centralizált verziókövető rendszereknek?
Signup and view all the answers
Miért előnyösek az osztott verziókövető rendszerek?
Miért előnyösek az osztott verziókövető rendszerek?
Signup and view all the answers
Mi történik a tároló inicializálásakor osztott verziókövető rendszerekben?
Mi történik a tároló inicializálásakor osztott verziókövető rendszerekben?
Signup and view all the answers
Mi a szerepe a biztonsági mentéseknek a verziókövető rendszerekben?
Mi a szerepe a biztonsági mentéseknek a verziókövető rendszerekben?
Signup and view all the answers
Study Notes
Szoftvermérnöki verziókövetés: Git & Git Flow
- A verziókövetés lehetővé teszi a csapatok számára, hogy közös kódbázist használjanak, megoszthassák, átvizsgálhassák és karbantarthassák a kódot.
- A biztonsági mentések hasznosak.
- A legismertebb verziókövető rendszerek közé tartozik a Git és a Mercurial.
- A tároló (repository) egy mappa, ahol a verziókövető rendszer nyomon követi a változásokat.
- A tároló tartalmazza a fejlesztéshez szükséges összes fájlt (forráskódok, dokumentációk, erőforrások, stb.).
Centralizált verziókövető rendszerek
- Egy lokális tárolót szinkronban tartunk egy távoli tárolóval.
- Ha egy rendszer csak egy távoli tárolót támogat, akkor centralizált rendszer.
- Csak a központi szerveren vannak biztonsági másolatok (single point of failure).
- Internet-kapcsolat szükséges.
- Pl. SVN
Széttagolt verziókövető rendszerek
- Több távoli tároló karbantartása lehetséges.
- Az összes állapot inicializáláskor másolódik a lokális tárolóba (clone).
- Minden kliensgép teljes biztonsági mentéssel szolgálhat.
- Nincs szükség Internet-kapcsolatra.
- Pl. Git, Mercurial
- A hátrány a hosszabb clone idő.
Git
- Linus Torvalds készítette a 2005-ben.
- Parancssorból is használható.
- Hasznos a parancssor használata.
- Léteznek felhasználói felületek (GitKraken, SourceTree).
- Online git tárolók (GitHub, Gitlab, Bitbucket).
- Windows-on is használható a Git Bash.
.gitignore
- Egy soronkénti lista a fájlnevekből vagy szűrőkből, amelyeken keresztül a Git figyelmen kívül hagyhatja a fájlokat.
- Bárhol elhelyezhető a tárolóban.
- A mappára érvényes, az összes almappára is.
- Javasolt legalább a tároló gyökerében elhelyezni.
- Példák: lefordított programok, IDE-beállítások, naplófájlok.
Git tároló inicializálása
- Egy mappa megjelölése lokális tárolóként.
- Létrehoz egy .git mappát.
- Lehet URL-ről is inicializálni.
Beállítások
- A Git beállítások több fájlban találhatók.
- Prioritási sorrendben: lokális, felhasználó, rendszer.
Külső tárolók karbantartása
- Egy tároló több külső tárolóval is szinkronban tartható.
- Külső tárolókat remote-okként kezel a Git.
- Használatához URL szükséges.
- Releváns parancsok:
git remote -l
,git remote add
.
Változások modellezése: DAG (Directed Acyclical Graph)
- A Git változások szerkezetét egy irányított, körmentes gráffal modellezi.
- A csúcsok revíziók (commitok).
- Az élek egy revíziótól a másikhoz mutatnak (általában egy korábbi revíziótól egy újabbra mutatva).
- A Git minden revíziót egyedi bináris azonosítóval lát el.
- A b-ből a-ba mutató él azt jelenti, hogy az állapot a-n alapszik.
Változások feltöltése
- A változtatásokat a Git Staging Area-ba, majd committal a tárolóba kell feltölteni.
-
git add
parancs a változtatások felvételére a staging area-ba. -
git commit
parancs a feltöltéshez. - Üzenet kötelező a committal együtt.
Változások letöltése
-
git fetch
a távoli tároló változásainak letöltésére a lokális tárolóban. -
git pull
a letöltött változások integrálására a lokális ágba.
További Git parancsok
-
git status
,git diff
,git log
,git log --oneline --graph
.
Összevonás (merge)
- Két ág (branch) változását egyesítő művelet.
- Hasznos a különböző ágak munkájának egyesítéséhez, összevonásához.
- Ha a két ág elágazott egymástól, akkor nem lehet automatikusan elvégezni az összevonást.
Elágazás (branching)
- A feladatok szétválasztására és egyidejű (párhuzamos) lebonyolítására szolgál.
-
git branch
parancs elágazások listázásához. - Új ág létrehozása:
git branch <ágNév>
. - Aktív ág váltása:
git checkout <ref>
.
Clean & reset
- A Git 'clean' parancs törli a nem követett fájlokat.
- A Git reset parancs visszaállítja a tárolót egy korábbi állapotba.
- Különböző módjai vannak a 'reset'-nek, hogy miként befolyásolja a staging areát.
Git flow
- Egy konvencionális Git munkamódszer.
- A funkcionalitás szerint tagolva az egyes ágak.
-
feature branches
létrehozása. -
merge
amaster
ágra. -
gitlab merge request
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Ez a kvíz a git merge folyamatáról szól, különös figyelmet fordítva a HEAD és a célpont ág közötti eltérésekre, valamint a merge konfliktusok okaira. Megtudhatod, mit jelentenek az ágak a verziókövetésben, és milyen lépéseket kell követni a konfliktusok feloldása után.