Git Merge Konfliktusok és Ágak
42 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

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?

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?

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?

<p>A merge commitnak két szülője van, és tartalmazza a különböző ágaktól származó változtatásokat.</p> Signup and view all the answers

Milyen lépéseket kell követni a merge konfliktus feloldása után?

<p>A konfliktus feloldása után a következő lépés a merge commit létrehozása.</p> 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?

<p>2005-ben készült el, Linus Torvalds készítette.</p> Signup and view all the answers

Miért ajánlott a parancssor használata a git tanulása során?

<p>A parancssor használata segít jobban megérteni a git működését és a parancsok hatását.</p> Signup and view all the answers

Milyen típusú fájlokat szoktak kihagyni a .gitignore fájlban?

<p>Kihagyják a kompiláció eredményeit, bináris fájlokat és IDE beállításokat.</p> Signup and view all the answers

Milyen online git tárolókat ismerünk?

<p>Ismerjük a GitHub, GitLab és BitBucket platformokat.</p> Signup and view all the answers

Milyen előnnyel jár a Git Bash használata Windows alatt?

<p>A Git Bash egy szimulált UNIX terminálkörnyezetet biztosít Windows alatt.</p> Signup and view all the answers

Mi a különbség a --soft és a --hard reset között a gitben?

<p>A <code>--soft</code> reset megtartja a változtatásokat a staging area-ban, míg a <code>--hard</code> reset mindent visszaállít, és a nem commitolt változások elvésznek.</p> Signup and view all the answers

Mit jelent a git reset --hard HEAD~1 parancs?

<p>Ez a parancs a jelenlegi ágat az egyel korábbi commit állapotába állítja vissza.</p> Signup and view all the answers

Mi az alapvető elv a git flow használatakor a feature branch-ekkel kapcsolatban?

<p>Minden user story-t a saját ágán, a feature branch-en valósítunk meg, sosem push-olunk közvetlenül a master ágra.</p> Signup and view all the answers

Mi a git flow előnye a csapatmunkában?

<p>A git flow biztosítja, hogy a master ág mindig stabil állapotot tükrözzön, így a kliens mindig átadható anyagot kap.</p> Signup and view all the answers

Milyen szerepet játszik a GitLab merge request a csapatmunkában?

<p>A GitLab merge request lehetővé teszi két ág összeolvasztását, és áttekinthető összefoglalót ad az átkapcsolásról.</p> Signup and view all the answers

Milyen követelményeket lehet meghatározni a GitLab merge request során?

<p>Feltételeket szabhatunk a merge-re, például a kód átnézését vagy tesztelését.</p> Signup and view all the answers

Mi a staging area szerepe a git verziókezelésében?

<p>A staging area ideiglenes hely a változtatások számára, ahol a commit előtt ellenőrizhetjük őket.</p> Signup and view all the answers

Hogyan támogathatja a kód átnézése a merge folyamatát a git-ben?

<p>A kód átnézése javítja a kódminőséget és segít az esetleges hibák kiszűrésében a merge előtt.</p> Signup and view all the answers

Mi a git log parancs fő funkciója?

<p>A git log parancs a jelenlegi ág commitjait listázza.</p> Signup and view all the answers

Mire szolgál a git log --oneline parancs?

<p>A git log --oneline parancs kompakt megjelenítést biztosít a commitokról.</p> 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?

<p>A git log --graph a commitok tényleges gráf megjelenítését biztosítja, míg a git log --oneline egyszerű, tömör listát ad.</p> Signup and view all the answers

Mit jelent a git merge parancs?

<p>A git merge parancs két commit történetét egyesíti.</p> Signup and view all the answers

Milyen tényezők befolyásolják a git merge működését?

<p>A git merge működését befolyásolja a HEAD által mutatott ág és a megadott célpont commit.</p> 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?

<p>Ez azt jelenti, hogy a jelenleg aktív ág már tartalmazza a célpont commit változásait.</p> Signup and view all the answers

Hogyan lehet megtekinteni a teljes gráfot GitLabon?

<p>A teljes gráf megtekintéséhez a Repository → Graph menüpontban kell navigálni.</p> Signup and view all the answers

Milyen információkat tartalmaz a git log outputja?

<p>A git log outputja tartalmaz commit ID-kat, üzeneteket, szerzőt és az ág pointereit.</p> Signup and view all the answers

Mi az a revízió vagy commit a git rendszerében?

<p>A revízió vagy commit a git rendszerében a tároló egy állapotát jelképezi, amely egyedi bináris azonosítóval rendelkezik.</p> Signup and view all the answers

Milyen típusú gráfban modellezzük a változásokat a git-ben?

<p>A változásokat egy irányított aciklikus gráfban (DAG) modellezzük a git-ben.</p> Signup and view all the answers

Mi a szerepe a HEAD pointernek a git tárolóban?

<p>A HEAD pointer jelképezi a lokális tárolóban látható állapotot és nyomon követi a változásokat a megadott commit alapján.</p> Signup and view all the answers

Mivel jelöljük a változásokat, amelyeket a következő commitba szeretnénk felvenni?

<p>A változásokat a <code>git add</code> parancs segítségével jelöljük, ami őket a staging area-ba helyezi.</p> Signup and view all the answers

Hogyan nevezzük el a commitokra mutató pointereket a git-ben?

<p>A commitokra mutató pointereket névvel látjuk el, például <code>master</code> vagy <code>origin/master</code> néven.</p> Signup and view all the answers

Mit jelent a headless állapot a git-ben?

<p>A headless állapot azt jelenti, hogy a HEAD pointer egyenesen egy revízióra mutat, nem pedig egy ágra.</p> Signup and view all the answers

Milyen információt tartalmaz a git commit az azonosítón kívül?

<p>A git commit tartalmazza a commit üzenetét és a változások listáját, amelyek a commit során történtek.</p> 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?

<p>A változások közötti függőségek a commitok közötti irányított kapcsolatok révén jelennek meg a gráfban.</p> Signup and view all the answers

Mi a célja a verziókövetésnek a szoftverfejlesztésben?

<p>A verziókövetés célja a közös kódbázis megosztása, vizsgálata és karbantartása, valamint a biztonsági mentések készítése.</p> Signup and view all the answers

Mik azok a tárolók (repositories) a verziókövető rendszerekben?

<p>A tárolók olyan mappák, amelyek monitorozzák a változásokat és tárolják a fejlesztéshez szükséges állományokat.</p> Signup and view all the answers

Mi a különbség a lokális és a távoli tároló között?

<p>A lokális tároló a fejlesztő számítógépén található, míg a távoli tároló egy külső számítógépen létezik.</p> Signup and view all the answers

Mik jellemzik a centralizált verziókövető rendszereket?

<p>A centralizált verziókövető rendszerek csak egy távoli tárolót támogatnak, és nem minden verzió kerül a lokális tárolóba.</p> Signup and view all the answers

Mi a hátránya a centralizált verziókövető rendszereknek?

<p>A hátrányuk, hogy a központi szerveren van a biztonsági mentés, ami egyetlen hibapontot jelent.</p> Signup and view all the answers

Miért előnyösek az osztott verziókövető rendszerek?

<p>Az osztott verziókövető rendszerek több távoli tároló karbantartását teszik lehetővé, és minden kliens teljes biztonsági mentést biztosít.</p> Signup and view all the answers

Mi történik a tároló inicializálásakor osztott verziókövető rendszerekben?

<p>A tároló inicializálásakor az összes állapot másolódik a lokális tárolóba.</p> Signup and view all the answers

Mi a szerepe a biztonsági mentéseknek a verziókövető rendszerekben?

<p>A biztonsági mentések szerepe a kód korábbi állapotainak helyreállítása és a munka elvesztésének elkerülése.</p> 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 a master ágra.
  • gitlab merge request

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

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.

More Like This

Git Workflow Quiz
79 questions

Git Workflow Quiz

AmazingKhaki avatar
AmazingKhaki
GIT Radiology by Prof. V. Adetiloye
12 questions

GIT Radiology by Prof. V. Adetiloye

WellEducatedByzantineArt8589 avatar
WellEducatedByzantineArt8589
Use Quizgecko on...
Browser
Browser