Oktatóanyagok > A Git telepítése és az első lépések

A Git telepítése és az első lépések

Közzétéve: 16 január 2020

Development Git Ubuntu

A Git egy elosztott verziókezelő szoftver, amelyet 2005-ben fejlesztettek ki, mint egy eszközt a Linux kernel fejlesztésének egyszerűsítésére, a programozók közötti koordináció megkönnyítésével. Ma a Git a világ egyik legnépszerűbb verziókezelő szoftverévé vált.

A Git a parancssori felületről használható, és lehetővé teszi bármely adatkészlet változásának nyomon követését. A Git szoftver előnyei a nagy sebesség, az adatok integritása és a munkafolyamat-támogatás. A Git használatával az összes adatmappát bármely eszközre elhelyezzük, és ez egy valódi „tároló”, előzményekkel és az összes változás nyomon követésének lehetőségével.

Ez az útmutató elmagyarázza, hogyan kell telepíteni és használni a Git-et nagyobb Linux disztribúciókon, főleg az Ubuntu 18.04-re hivatkozva.

Először csatlakozzon a szerverhez SSH kapcsolaton keresztül. Ha még nem tette meg, akkor ajánlott átböngésznie a Hogyan javítható az SSH biztonság az Ubuntu 18.04-en? útmutatónkat a folyamat megkezdése előtt. Helyi szerver esetén folytassa a következő lépéssel, és nyissa meg a szerver terminált.

A Git telepítése

Frissítse a disztribúciós repókat és kezdje el telepíteni a Git-et az apt-get segítségével:

$ apt-get update && apt-get install git

Az eljárás befejezése után a Git telepítésre kerül. A sikeres telepítés és a szoftververzió ellenőrzéséhez használja a "--version" argumentumot:

$ git –version

Végül, a 'Git' használatának megkezdéséhez konfigurálja a felhasználói információkat (név és e-mail cím), amelyeket az egyes létrehozott csomagokhoz társít:

$ git config --global user.name "Name Surname"
$ git config --global user.email "[email protected]"

Mostantól kezdve ez az útmutató a szoftver különféle tulajdonságainak magyarázatára összpontosít, az egyes parancsok szintaxisának jelentésére. Ezeket a különféle szolgáltatásokat az Ubuntu-on tesztelték, bár minden más Linux disztribúcióra érvényesek.

A munkaterület inicializálása

A Git fő célja egy adott projekt több munkafolyamata közötti együttműködés ösztönzése. Ezért az első lépés a munkaterület inicializálása, egy üres helyi „tároló” létrehozása vagy egy távoli beszerzése.

Az első esetben egy új 'tároló' létrehozásához vagy újraindításához használja az "init" parancsot:

$ git init

Ez a parancs létrehoz egy '.git' mappát, amely tartalmazza az 'adattárhoz' szükséges összes fájlt. A mappa tartalmazza az összes fájlt, amely a nyomon követhető projektet tartalmazza. Az összes új fájlt kezdetben feloldják, azaz azt jelenti, hogy nem követik őket. Ez azt jelenti, hogy a pillanatkép betöltésekor ezeket nem veszik figyelembe.
Ha el akarja kezdeni a fájlok nyomon követését, használja az 'add' parancsot, majd kövesse az "elküldés" parancsot, vagy röviden jelölje meg, hogy mit tartalmaz:

$ git add <FilePath/FileName>
$ git commit -m ‘<Description>’

Az 1. ábrán a példa az új „tároló” inicializálására és a „FileTestA” fájl beillesztésére, valamint. a terminál kimenete jeleníti meg a művelet sikerét.

 New Git Repository

1. ábra - Inicializálási példa és nyomkövetés az Ubuntu terminálon

Ha azonban hozzájárulni szeretne egy már létező "lerakathoz", akkor használja a "klón" parancsot. Ezzel a paranccsal a Git megkapja a megadott szerveren lévő projektfájl-verziók összes példányát:

$ git clone <URL> <Destination_Folder>

<URL> helyett adja meg azt a címet, ahonnan letöltheti a csomagot. Míg a <Destination_Folder> helyett, adott esetben jelölje meg a letöltött fájlok mentési útvonalát és mappáját. Ha nem ad meg semmit, ezeket a fájlokat a 'Home' mappába menti.

Ami az URL-t illeti, számos átviteli protokoll használható a Git által a „tárolók” letöltésére:

· Git protokoll (git: //);

HTTP protokoll (http: // vagy https: //);

SSH protokoll (ssh: //);

Felhasználó és szerver (felhasználónév @ szerver: /path.git).

Mentés és szakaszolás

A munkafüzetben lévő fájlok „nyomon követhetetlen”, „nyomon követhető”, „nem módosított” és „módosított” állapotúak lehetnek. Amint az az előző bekezdésben látható, az „nem követett” állapotú fájlok a munkakönyvtárban található összes olyan fájl, amely nem található meg a pillanatképben (új "lerakat" létrehozásakor).
A meglévő „tároló” klónozása ezzel szemben a letöltött fájlok alapállapotát „követi nyomon”. Ezért ezek a fájlok „módosíthatatlanok” is lehetnek, ha a letöltést követően nem szerkesztik őket, vagy „módosíthatók”, ha az utolsó elkötelezettség óta megváltoztak.

A fájl állapotának ellenőrzéséhez használja az 'status' parancsot:

$ git status

Az alábbi kép a terminál képernyőképeit mutatja, ahol egy új projektet inicializáltak, fájlt adtak hozzá és létrehozták az első megbízást. A "status" paranccsal a terminál meghatározza, hogy nincs módosított fájl frissítésre. A zöld vonaltól kezdve, a fájl módosítása után, az 'status' parancs ismét végrehajtásra kerül.

 Git Status

2. ábra - Példa a Git fájl inicializálására, követésére és szerkesztésére az Ubuntu terminálon

Az újonnan módosított fájl most megjelenik a "Változatlanul végrehajtott változtatások" címsor alatt, ami azt jelenti, hogy a nyomon követett fájl megváltozott a munkafüzetben, de még nincs a szakaszban.

Ezért kétféleképpen lehet eljárni:

  • Frissítse a fájlt a szakaszban (meg kell ismételni a követési eljárást, azaz a 'git add' parancsra lesz szükség);

  • Dobja el a változtatásokat (a „git checkout <File_Path> használatával).

Tegyük fel, hogy az éppen szerkesztett fájlt a „git add” parancs futtatásával és a „git status” megismétlésével akartuk állapotba hozni.

Git Workflow

3. ábra - A módosított fájlok állása az Ubuntu terminálon 18.04

A fájl ezután módosul, de készen áll az átadásra (zöld téglalap a 3. ábrán). Ha a kötelezettségvállalás előtt a fájlban további módosítás történik, és annak állapotát ellenőrzik, akkor mindkettőt „készen áll a készenléti fájlra”, és mint a még nem a szakaszban lévő fájlt (piros téglalap a 3. ábrán).
Ez akkor fordul elő, mert a szakaszban lévő fájl nem módosul (az a fájl lesz, amely lekötésre kerül, ha most végrehajtják a "kötelező" parancsot), míg a külső fájl éppen módosítva. A további módosítás elvégzéséhez ismét adjuk hozzá (kék téglalap a 3. ábrán).

A fájlok figyelmen kívül hagyása

Ha nem akarja, hogy bizonyos fájlok, például a „naplófájlok” automatikusan hozzáadódjanak, hozzon létre egy „.gitignore” fájlt a kizárni kívánt fájlok listájával.

Bizonyos típusú minták automatikus beillesztése, az összes figyelmen kívül hagyandó fájl felsorolása nélkül, tartalmazza az összes mappát és speciális karaktereket használ. A mintákra a következő szabályok vonatkoznak:

  • Az üres sorokat vagy a "#" betűvel kezdődő sorokat automatikusan figyelmen kívül hagyják;
  • A "/" perjel használható az almappa jelölésére;
  • Használja a "!" Karakter a minta elutasítására;
  • A globális minták felhasználhatók.

A globális minta egy szintaxis, amelyet karakterláncok egy sorának ábrázolására használnak. A leggyakoribbak a következők:

  • a csillag (*), amely jelzi a karakterláncokat (gyakran egy adott kiterjesztés összes fájljának megjelölésére használnak);
  • a kérdőjel (?), amely bármilyen karaktert jelöl, és szögletes zárójelben ([…]) a karakter- vagy számsor meghatározására.

A Commit megváltoztatása

Miután a fájlokat a szakaszba helyezte (a "git add" paranccsal), hajtsa végre a változtatásokat. Az elkötelezettség a szakasz területén mentett pillanatkép rögzítésére szolgál.

Bármi, ami nem kerül a szakaszra, nem lesz a kötelező, de természetesen a helyi mappában módosítva marad.

A legegyszerűbb módszer a következő parancs használatával:

$ git commit

Ezzel megnyílik a „git” állapotparancs utolsó kimenetét megjelenítő szövegszerkesztő az első sorral üresen: itt beírhatja az átadási üzenetet, hogy megfelelően jelezze, milyen változtatásokat hajt végre.

Most készítette el az első commitot! Az útmutató elkészítése előtt bemutatjuk a fájlok további eltávolítására vagy módosítására vonatkozó eljárásokat.

A fájlok eltávolítása

A Git fájl eltávolításához ne csak a nyomon követett fájlokból távolítsa el, hanem ismételje meg a kötelezettségvállalást a módosítások mentéséhez. Valójában, ha egyszerűen törli a fájlt a mappából, a kapott fájl nem a szakaszban jelenik meg.

A 'git rm' paranccsal, majd a fájl elérési útjával és nevével, a fájl eltávolítása folyamatban van, és a következő commit után teljesen eltűnik:

$ git rm <File>

Ha már módosította és hozzáadta a fájlt az indexhez, az "-f" opció hozzáadásával kikényszerítheti annak eltávolítását:

$ git rm -f <File>

Ha azonban csak a szakaszba tévesen beillesztett fájlt akar eltávolítani, miközben a lemezen tartja, akkor használhatja a "- cached" opciót:

$ git rm --cached <File>

Fájlok áthelyezése és átnevezése

Egy másik dolog, amit érdemes megtenni, a fájlok áthelyezése vagy átnevezése. Ez nem egy automatikus művelet, mivel a Git nem követi kifejezetten a fájlmozgások nyomon követését, azaz nem állnak elő metaadatok a "rename" opció nyomon követéséhez.

Ez a művelet az ismert parancsokkal hajtható végre, ha először megváltoztatja a nevet, eltávolítja az 'previous' fájlt (git rm) a Gitből, majd hozzáadja az 'new' (git add) fájlt.

Annak elkerülése érdekében, hogy az egyes átnevezésekhez / mozgatásokhoz ezt a parancs-sorozatot hajtsa végre, a Git saját, a "git mv" paranccsal rendelkezik, amely ugyanazt az eredményt adja, mint a fentebb felsorolt ​​három egyszerre.

A teljes szintaxis az alábbiakban látható:

$ git mv <OldPath/OldName> <NewPath/NewName>

Ez a parancs pontosan ugyanazt az eredményt adja, mint a következő három:

$ mv <OldPath/OldName> <NewPath/NewName>

$ git rm <OldPath/OldName>

$ git add <NewPath/NewName>

Ezzel a fájl átnevezésre és / vagy áthelyezésre kerül és már a szakaszban készen áll a commitra.A művelet sikerének ellenőrzéséhez futtassa a 'git status' parancsot, amely kiadja a 'átnevezett' szakaszt a változások listájában, ahol az összes fájl, amely megváltoztatta a nevét vagy elérési útját, fel lesz sorolva. Minden fájlhoz adja meg az előző és az aktuális nevet / elérési utat is.