Hogy működik a Git? Mi az a verzió kezelés?
A verziókezeléssel egy sor alapvető problémára derülhet fény, akár egyéni, akár csapatmunkáról van szó, és nem is csak a szoftverfejlesztésben vált elengedhetetlen eszközzé.
Mi az a verziókezelés?
A verziókezeléssel egy sor alapvető problémára derülhet fény, akár egyéni, akár csapatmunkáról van szó, és eredetileg nem is csak a szoftverfejlesztésben vált elengedhetetlen eszközzé a hibák elkerülésére és kezelésére.
Version Control System
A verziókövetés feladata, hogy az azonos projekten dolgozók eltérő verziói könnyedén egy azon egész projektté formálódhasson és ezzel a csapatmunkát produktívabbá lehessen tenni. A verziókezelés egy folyamat, amelyet a szoftvertervezők és fejlesztők a kódbázisuk és projektjük változásainak nyomon követésére használnak. A verziókezelő rendszer (VCS - Version Control System) segítségével a fejlesztők képesek rögzíteni és ellenőrizni az alkalmazás forráskódjának változásait. A verziókezelés elősegíti a csapatmunkát, mivel lehetővé teszi a fejlesztők számára, hogy párhuzamosan dolgozhassanak egy projekt különböző részein, ezért már a programozó képzés alatt megkerülhetetlen lehet a megismerése.
A VCS lehetővé teszi a változások nyomon követését, a visszatérést korábbi verziókhoz, és alapvetően megkönnyíti az összefésülést, amikor különböző fejlesztők egyszerre dolgoznak ugyanazon a projekt különböző részletein. Ezen kívül a verziókezelés segít dokumentálni a változásokat, tehát a fejlesztők által végzett módosításokat a változások időpontját is rögzíti. Ez növeli a projekt karbantarthatóságát, segít megelőzni a konfliktusokat és megkönnyíti az esetleges hibák visszakövetését.
Ez nem egy gittegylet
Az egyik legelterjedtebb verziókezelő rendszer a GIT, egy nyílt forráskódú, elosztott verziókezelő szoftver, amelyet kódprojektjeink és más szöveges fájlok változásának nyomon követésére használhatunk. A GIT segít a fejlesztőknek a kódváltoztatások kezelésében és nyomon követésében, így könnyen visszatérhetünk egy korábbi verzióhoz vagy összefésülhetjük a különböző fejlesztői munkákat. A GIT jelentős segítséget nyújt több fejlesztő együttműködése esetén, anélkül, hogy összezavarná a különböző munkafolyamatokat. A rendszer lehetővé teszi a párhuzamos fejlesztést, a különálló fejlesztői ágak létrehozását, majd ezek összefésülését a fő ággal.
A GIT segít a kódprojektek követésében is, így könnyen látható, hogy ki milyen változtatásokat hajtott végre és mikor a közös kódbázisban. Ennek eredményeként a GIT hozzásegít a projekt tisztaságához, karbantarthatóságához és fejlesztési folyamatának hatékonyságához. A verziókezeléssel jelentőségének megfelelően a Prooktatásnál már az első modulban megismerkednek a Git használatával a tanulók, mivel bár a tanulás szempontjából a használata nem kritikus, utána egy munkahelyen egészen biztosan szükség lesz a használatára.
A programozás mellett azonban a mérnöki munkában is jelentős szerepe van a verziókezelésnek, de tény, hogy ma már a legtöbb verziókezelő rendszert szoftverfejlesztési projektekben használják. Nem véletlenül, ugyanis haszna felbecsülhetetlen.
A GIT a verziókezelést elosztott rendszerként valósítja meg, amely lehetővé teszi a fejlesztők számára, hogy saját példányt tartsanak a projekt teljes történetéről és az összes verzióról.
Inicializálás, állapotellenőrzés, követés…
A verziókövetésre szerencsére van beépített lehetőségünk a Visual Studio által, amely segít ennek használatát kivitelezni. A solution explorer mellett a git changes fülnél tudunk létrehozni új repositoryt (Create Git Repository), vagyis központi tárolót, de ezt githubon is megoldhatjuk egy gyors regisztráció után.
Ezen kívül van még egy „clone repository” opció is, amely a kezdő felületen is megtalálható, amikor projektet hozunk létre, ez a funkció githubon tárolt verziót tud letölteni a gépünkre. Ha pedig már van központi tárolónk, és frissíteni akarjuk, akkor a „git changes” fülön először egy verzió elnevezést kell adnunk, majd a „commit all” gombbal letölthetjük a legfrisebb verziót. Ez a "Pull".
Feltöltés, a felső nyilaknál a 3. opció a „Push”, ezzel tudjuk a verziónkat feltölteni a githubos tárhelyre, ahol össze kell majd fésülni a verziókat, a „merge” segítségével. Ezt a folyamatot a Visual Studioban vagy weben keresztül is megtehetjük. Ha kész a közös verzió, akkor érdemes egy új projektként indítani a Visual Studiót és a „clone repository” opciót kiválasztva letölteni az új közös verziót. Ilyenkor a központi tároló elérése kell, ami egy githubos projekt link, és a hely a gépen, ahova létrehozza a lokális projektet. A verziónak mindig egyeznie kell, tehát minden fejlesztőnek a közös verziót kell folytatni fejlesztés során, mert ha a git verzió eltér, akkor nehezebb lesz újra összefésülni.
Tudtad? A Prooktatás képzésein, mind a full-stack webfejlesztő képzésen, a Python programozó tanfolyamon és a C# fejlesztő képzésen is tanuljuk verzió kezelést és gyakoroljuk is a Git használatát, akkor is, ha ez nincs külön feltüntetve a tematikában.