A lokális repo-nk egy másolata a távoli repo-nak, minden branch-re (mert hogy az összes branch-et tartalmazza) azt az utolsó commi-t ot tartalmazza, ami a PULL pillanatában a legújabb volt. Aztán ahogy telik az idő, mind a távoli, mind a lokális repositor-nkba ugyan azon a branch-en keletkezhetnek új commit-ok.
:[[File:ClipCapIt-191112-230439.PNG]]
A fenti példában a távoli repo-ban lévő master -en van egy olyan commit (C2`) ami az utolsó pull után keletkezett, így a lokális repo-ban nincs meg. A lokális repo-ban van is van két új commit a master-hez képest.
Mikor <br>GitKraken-ben ez a lokális commitkövetkező képen nézne ki: :[[File:ClipCapIt-191112-okat akarjuk szinkronizálni 231640.PNG]]A lentebbi kék doboz az origin (pushoriginal repository, vagyis ahonnan a lokálisat klónoztuk) a távoli repo-ba akkor ezt csak akkor tudjuk megtenni, ha fentebbi zöld doboz pedig a távoli repo-ban nincs újabb commit ahhoz képest,lokális mutatónk. <br><br>
===Push===
Ne feledjük el, hogy a git lokálisan is fenntart egy repository-t, amibe commit-al tudunk változásokat bejuttatni. Tehát az SVN-el ellentétben a változásokat a lokális repository-ba kell beadni, majd a PUSH-al szinkronizáljuk a lokális és távoli repo-t. A branch nem más igazából mint egy mutató a commit fán. Akárcsak a branch-ek esetében, a lokális commit
Mikor a lokális commit-okat akarjuk szinkronizálni (push) a távoli repo-ba akkor ezt csak akkor tudjuk megtenni, ha a távoli repo-ban nincs újabb commit ahhoz képest, min
== Konfliktus feloldása ==