1. Főoldal
  2. Cikkek
  3. Dev
  4. [Csapatmunka, Git-el] 1. rész: Mi is az a Git?

[Csapatmunka, Git-el] 1. rész: Mi is az a Git?

Dev

MI is az a Git? És hogyan segít mindez a közös programozásban? És mindez hogyan használható a webfejlesztésben? Vadonatúj cikksorozatunkban ezekre a kérdésekre adjuk meg a választ. Természetesen a cikk nem csak webfejlesztőknek lehet hasznos, de elsősorban az ilyen formában való felhasználást fogjuk most bemutatni. 

Mi is az a Git?

A Git egy nyílt forráskódú, elosztott verziókezelő rendszer. Oké, de minek is ez nekünk? Vegyünk egy alap állapotot, amelyben egy weboldal fejlesztésében több ember is részt vesz. Ez "klasszikus módon" úgy néz ki, hogy FTP segítségével letöltjük a szerkesztendő fájlokat, majd ha kész a szerkesztés feltöltjük őket. Ez egészen addig működik is, amíg nem módosítják ugyanazt a fájlt egyszerre többen - ez esetben felülírják egymás módosításait a szerverre való feltöltéskor. Az egészhez még hozzájön plusz problémaként, hogy gyakran elmarad 1-1 változás dokumentálása - így csak találgatni lehet, ki, miért, mit módosított. A probléma megoldása a verziókezelő rendszer.

Mi is az a verziókezelő rendszer?

A verziókezelő rendszer segítségével az előbbi problémákra találhatunk megoldást, segítségével láthatjuk hogy ki - mit módosított, a módosításokhoz megjegyzéseket fűzhetünk, illetve sok esetben elérhető itt még a dokumentáció, és egy Issues kezelő is. Ez utóbbiban a tervezett módosításokat, hibákat, ötleteket lehet kezelni.

Akkor mégis mi az a Git?

A Git napjaink egyik legnépszerűbb verziókezelő rendszere, mely mint már írtuk, egy elosztott verziókezelő rendszer. Ez utóbbi azt jelenti, hogy minden fejlesztőnek, külön helyi kódtára (repository) lehet, melyből miután elvégezte a módosításokat, feltöltheti (Push) azokat a központi kódtárba (repository). Így megoldható, hogy 1-1 fájlon egyszerre akár több ember is dolgozzon, miközben elkerülhetőek az egymást való felülírások is. Természetesen a központi kódtár (repository) tartalmát is bármikor lekérhetjük (Pull) saját helyi repository-nkba, így mindig az aktuális legfrissebb kódokkal dolgozhatunk.

Kezdjünk is hozzá

Bár saját Git szervert is létrehozhatnánk, sokkal egyszerűbb megoldás egy létező szolgáltatás használata. Ezek közül a legismertebb a GitHub, privát célokra pedig a GitLab lehet a legmegfelelőbb. 

GitHub

Regisztráció és belépés után máris elkezdhetjük az oldal használatát. Az oldalon nem csak repository-kat hozhatunk létre, hanem szervezeteket / csapatokat is. Hozzuk is létre első szervezetünket! A felső menüben válasszuk a + gombot, és kattintsunk a Create organization menüpontra.

Miután megadtuk a csapat nevét, és egy email címet, illetve felvettünk tagokat, már használhatjuk is az új szervezetünket. Most a +-ra kattintás után válasszuk a Create repository menüpontot. Tulajdonosnak saját magunk mellett így már az újonnan létrehozott szervezetünket is. Adjuk meg a repository nevét, majd hozzuk is azt létre.

Létrehozás után a repository-nk oldalára jutunk. Jelenleg a Quick setup oldalt láthatjuk, mivel még semmit nem töltöttünk fel ide. Itt, az első blokkban láthatjuk ezt a szöveget: We recommend every repository include a README, LICENSE, and .gitignore. Ebből a szövegből kattintsunk a README gombra. 

Így a readme.md fájl létrehozásához juthattunk el. A readme fájl egy egyszerű szövegfájl, ami a repository megnyitásakor fog megjelenni. A benne lévő szöveget markup-ok segítségével formázni is tudjuk, melyek teljes listáját itt olvashatjuk el.

A readme fájl szövegének megadása után a commit new file dobozban megadhatjuk, hogy mit, miért változtattunk a fájlon. Látható, hogy az alapértelmezett értéke a create README.md szöveg. Mivel először hoztuk létre a fájlt, és semmi speciális ok nincs annak módosítására, ezt így is hagyhatjuk, kattintsunk a commit new file gombra, amivel létre is jön az új fájlunk.

Nézzük sorban, mit is kínál nekünk a GitHub! A code fülön az előbb létrehozott fájlunkat láthatjuk, bal oldalt a fájlnevét, középen az utolsó commit-ot (az az a módosítás indokát), jobb oldalt meg a módosítás idejét láthatjuk. Ezen a lapon nem csak a legutolsó, hanem az összes fájl meg fog jelenni. Az issues lapon a létrehozott terveket, hibákat, stb. tarthatjuk számon. Ez a lap is üres jelenleg, így kattintsunk a New issue gombra. itt a cím és szöveg mellett, jobb oldalt megadhatunk címkéket, mérföldköveket, és személyeket is.

A következő lap a Pull requests, ahol a repository-nkhez érkezett módosítási kérelmeket láthatjuk majd. Itt található még két gomb, a Labels és a Milestones, amikkel - nevükből adódóan - a címkéket és a célokat tudjuk kezelni. Figyeljük meg, hogy ez a kettő mező volt az, amit a issue létrehozásánál is kiválaszthattunk!

A következő fontos menüpont a Wiki. Itt tudjuk létrehozni a kódunkhoz tartozó dokumentációt - ha szükséges.

Végül a következő két gombban statisztikákat láthatunk, míg az utolsó, settings gombbal a projektünk beállításait módosíthatjuk.

GitLab

Ez az oldal nagyon hasonló felépítésű a GitHub-hoz, így regisztráció után ismerős felület fog minket fogadni. A menüpontok elhelyezkedése mellett az egyetlen fontos elnevezésbeli különbség, hogy itt nem szervezeteket, hanem csapatokat hozhatunk létre - ami tulajdonképpen csak névbeli különbség.

itt a + gombra kattintva egyből a - itt project-nek hívott - repository létrehozása oldalra kerülünk. Adjunk meg egy nevet, és hozzuk létre első projektünket! Ami itt akár ingyenesen is privát lehet, a GitHub-al ellentétben.

Hozzuk létre itt is a readme.md fájlunkat, ami a GitHub-hoz nagyon hasonló módon tehető meg, illetve ugyanúgy markup-okkal formázhatjuk a szövegünket.

Ezek után már meg is tudjuk figyelni, hogy ugyanúgy, minden menüpont itt is megtalálható, mint GitHub-on. 

A sorozat következő részeiben beállítjuk az első saját, lokális repository-kat, elkészítjük a webfejlesztéshez szükséges munkakörnyezetünket, és feltöltjük első fájljainkat, amiket szerkeszteni is fogunk.

vmarci21 profilképe
Veszter Márton @vmarci21 +540 Weblap fejlesztő, az IntoMedia tagja. PHP, JavaScript és MySql témák mellett érdekli a Windows, Linux disztribúciók, Android fejlődése, az IT biztonság, és az újdonságokat felmutató IT termékek.
0 hozzászólás
Hozzászóláshoz jelentkezz be vagy Regisztrálj!