Changes

Git basics

38 bytes added, 21:05, 14 November 2019
Merge
===Fast-forward merge===
Ebben az esetben az a branch, ahonnan mergelni akarunk egyenes ági leszármazottja a jelenlegi branch-nek. Az alábbi ábrán pl a '''hotfix'''-et ha mergeljük a '''master''' -be.
:[[File:ClipCapIt-160930-152407.PNG|400px500px]]
Ebben az esetben a git nem csinál mást, mint előre mozgatja a master mutatóját (fast-forward). Persze ha volt változás, akkor a változásokat elsőként egyesíteni kell és az esetleges konfliktusokat feloldani.
===Két szülős, 3 utas===
Ebben az esetben az a branch ahonnan másolni akarunk (iss53), már nem közvetlen leszármazottja annak a branch-nek ahova merge-ni szeretnénk (master).
:[[File:ClipCapIt-160930-165652.PNG|400px500px]]
Ebben az esetben nem lehet egyszerűen előre mozgatni a mutatót. A git meg fogja keresni a közös őst, és egy három utas egyesítést fog csinálni a közös ősből, a jelenlegi branch -ből (a példában a master) és a bemásolandó branch-böl (a példában az iss53), és ebből az egészből létre fog hozni egy új commit-ot.
A mi példánkban a c6 lesz létrehozva a c5 c4 és c2 commit-okból.
:[[File:ClipCapIt-160930-170846.PNG|400px500px]]
<br>
Fontos, hogy az új merge commit elkészítéséhez a közös őst is felhasználja a git. Ez azért kell, hogy lássa hogy azon fájlokban ami mind a két ágon módosult, mi volt a kiindulási alap. Ha pl. az egyik ágon az első sort töröltem, a másik ágon az utolsót, akkor látni fogja az eredeti alapján, hogy nem az egész fájl változott csak az első és az utolsó sor, ez alapján el tudj készíteni az egyesített verziót.
<br><br>
===Merge GitKraken-ben===
 
 
<br>
<br>
==Rebase==