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?
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?
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?
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?
Milyen típusú fájlokat szoktak kihagyni a .gitignore fájlban?
Milyen típusú fájlokat szoktak kihagyni a .gitignore fájlban?
Milyen online git tárolókat ismerünk?
Milyen online git tárolókat ismerünk?
Milyen előnnyel jár a Git Bash használata Windows alatt?
Milyen előnnyel jár a Git Bash használata Windows alatt?
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?
Mit jelent a git reset --hard HEAD~1
parancs?
Mit jelent a git reset --hard HEAD~1
parancs?
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?
Mi a git flow előnye a csapatmunkában?
Mi a git flow előnye a csapatmunkában?
Milyen szerepet játszik a GitLab merge request a csapatmunkában?
Milyen szerepet játszik a GitLab merge request a csapatmunkában?
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?
Mi a staging area
szerepe a git verziókezelésében?
Mi a staging area
szerepe a git verziókezelésében?
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?
Mi a git log parancs fő funkciója?
Mi a git log parancs fő funkciója?
Mire szolgál a git log --oneline parancs?
Mire szolgál a git log --oneline parancs?
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?
Mit jelent a git merge parancs?
Mit jelent a git merge parancs?
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?
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?
Hogyan lehet megtekinteni a teljes gráfot GitLabon?
Hogyan lehet megtekinteni a teljes gráfot GitLabon?
Milyen információkat tartalmaz a git log outputja?
Milyen információkat tartalmaz a git log outputja?
Mi az a revízió vagy commit a git rendszerében?
Mi az a revízió vagy commit a git rendszerében?
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?
Mi a szerepe a HEAD pointernek a git tárolóban?
Mi a szerepe a HEAD pointernek a git tárolóban?
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?
Hogyan nevezzük el a commitokra mutató pointereket a git-ben?
Hogyan nevezzük el a commitokra mutató pointereket a git-ben?
Mit jelent a headless állapot a git-ben?
Mit jelent a headless állapot a git-ben?
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?
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?
Mi a célja a verziókövetésnek a szoftverfejlesztésben?
Mi a célja a verziókövetésnek a szoftverfejlesztésben?
Mik azok a tárolók (repositories) a verziókövető rendszerekben?
Mik azok a tárolók (repositories) a verziókövető rendszerekben?
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?
Mik jellemzik a centralizált verziókövető rendszereket?
Mik jellemzik a centralizált verziókövető rendszereket?
Mi a hátránya a centralizált verziókövető rendszereknek?
Mi a hátránya a centralizált verziókövető rendszereknek?
Miért előnyösek az osztott verziókövető rendszerek?
Miért előnyösek az osztott verziókövető rendszerek?
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?
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?
Flashcards
git
git
A verziókezelő rendszer, amelyet Linus Torvalds készített 2005-ben.
gitignore
gitignore
Egy fájl, amely tartalmazza a figyelmen kívül hagyandó fájlokat és mappákat a git tárolóban.
parancssor
parancssor
Olyan felület, ahol parancsokat adhatunk meg közvetlenül a számítógépnek.
GitHub
GitHub
Signup and view all the flashcards
Git Bash
Git Bash
Signup and view all the flashcards
Verziókövetés
Verziókövetés
Signup and view all the flashcards
Tároló (repository)
Tároló (repository)
Signup and view all the flashcards
Lokális tároló
Lokális tároló
Signup and view all the flashcards
Távoli tároló
Távoli tároló
Signup and view all the flashcards
Centralizált verziókövető rendszer
Centralizált verziókövető rendszer
Signup and view all the flashcards
Hátrányok a centralizált rendszerben
Hátrányok a centralizált rendszerben
Signup and view all the flashcards
Osztott verziókövető rendszer
Osztott verziókövető rendszer
Signup and view all the flashcards
Biztonsági mentések
Biztonsági mentések
Signup and view all the flashcards
Revizió
Revizió
Signup and view all the flashcards
Bináris azonosító
Bináris azonosító
Signup and view all the flashcards
Pointer
Pointer
Signup and view all the flashcards
HEAD
HEAD
Signup and view all the flashcards
Headless állapot
Headless állapot
Signup and view all the flashcards
Git add
Git add
Signup and view all the flashcards
Staging area
Staging area
Signup and view all the flashcards
DAG
DAG
Signup and view all the flashcards
Merge commit
Merge commit
Signup and view all the flashcards
Átfedés
Átfedés
Signup and view all the flashcards
Aktív branch
Aktív branch
Signup and view all the flashcards
Merge konfliktus
Merge konfliktus
Signup and view all the flashcards
Branching
Branching
Signup and view all the flashcards
git reset
git reset
Signup and view all the flashcards
--soft reset
--soft reset
Signup and view all the flashcards
--mixed reset
--mixed reset
Signup and view all the flashcards
--hard reset
--hard reset
Signup and view all the flashcards
feature branch
feature branch
Signup and view all the flashcards
master ág
master ág
Signup and view all the flashcards
merge request
merge request
Signup and view all the flashcards
kód átnézés
kód átnézés
Signup and view all the flashcards
git log
git log
Signup and view all the flashcards
git log --oneline
git log --oneline
Signup and view all the flashcards
git log --graph
git log --graph
Signup and view all the flashcards
git log -n
git log -n
Signup and view all the flashcards
git merge
git merge
Signup and view all the flashcards
műveletek merge-nél
műveletek merge-nél
Signup and view all the flashcards
célpont a merge-nél
célpont a merge-nél
Signup and view all the flashcards
gráf GitLabon
gráf GitLabon
Signup and view all the flashcards
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.