GIT használata

(Ez az oldal a TortoiseGIT beépített összehasonlítójáról tartalmaz képeket, mely lecserélhető a GIT TELEPÍTÉS oldalon ismertetett módon Notepad++-ra)

Létező projekt letöltése

Regisztráljunk a gitlab.com-on, majd adassuk magunkat hozzá a projekthez a projekt gazdájával. Ezt követően jobb egér a mappában, ahova le akarjuk tölteni a projektet, git clone, projekt link bemásolása, amit kaptunk a projekt gazdájától.

-Parancssorban: sudo git clone --tags --recursive git@gitlab.com:username/test-project.git (a recursive kapcsoló a submodule-ok miatt kell, ha vannak)

Frissítések letöltése

Mappa kontext menüjében TortoiseGIT/Pull

-Parancssorban: git pull --tags --recurse-submodules origin master (a master branch esetén)

-Ha vannak subemodule-ok, akkor az alábbi 2 parancs is kell:

-git submodule init

-git submodule update

Végén Pulled Diff gombbal megtekinthetőek a változások a fájlra duplán kattintva

-Parancssorban: git diff

Változtatás feltöltése

Csak olyan kódot szabad commit-olni ami le is fordul és működik. Jobb egér gombbal a mappára, majd Commit. Message-hez írjuk be mi az a változtatás ami történt. Minden commit csak egy funkciót, részfunkció bővítést vagy hibajavítást tartalmazzon, tehát nem fixen nap végén kell egy commit-ot nyomnia, hanem értelemszerűen munka közben.

-Parancssorban: git commit -m 'Commit message'

Ezt követően Push-oljuk a szerverre a változtatást (vagy választhatjuk egyből a Commit&Push opciót is).

-Parancssorban: git push origin

Mi történik, ha mióta letöltöttük a frissítést valaki felküldött új commit-ot? Nem fog sikerülni a push, pull kell.

-Parancssorban:

-A git-ben a pull parancs kettő másik parancs kombinációja, amit egyenként érdemes elvégezni:

-git fetch --recurse-submodules origin //Leszedi a szerverről az összes módosítást

-git merge origin/develop //Ha develop branch-ben vagyunk, mert feltehetően abba akarjuk merge-elni a szerveren található develop branch-et

Ez normál esetben automatikusan össze merge-eli a dolgokat, pl ha a fájl különböző részein dolgozott két ember párhuzamosan. Azonban ha ugyanazt a részt módosították, akkor manuálisan kell merge-elni, kiválasztva hogy melyik verziót akarjuk megtartani az ütköző részeknél:

Code review:

SW verziók összehasonlítása: Jobb gomb/TortoiseGIT/Diff

-Parancssorban: git diff

SW módosítások listázása: Jobb gomb/TortoiseGIT/Show log

SW verziók grafikus megjelenítése: Jobb gomb/TortoiseGIT/Revision graph

Váltás verziók között

Környezeti menüben a Switch/Checkout lehetőséggel, válaszható hogy branch-ek vagy commit-ok közötti állapotot akarjuk visszaállítani, commit-ok közötti váltogatás így néz ki:

-Parancssorban: git master //átállás a master branch-re

-Branch-ek listázása: git branch -r

A végén váltsunk vissza a legfrissebb állapotra, nehogy egy régi verziót kezdjünk továbbírni!