Skip to content
Snippets Groups Projects
Forked from Rafael László / Git Presentation
12 commits behind the upstream repository.

Verziókezelés

Mi is az a verzió kezelés?
Talán a legegyszerűbb egy példán keresztül szemléltetni. Tegyük fel egy docx fájlt szerkesztünk és ezt hetente frissítve rendszeresen el kell küldenünk emailben valakinek. Ilyenkor különböző verziók keletkeznek a fájlból és ezeket a postafiókunkból könnyedén előtudjuk szedni.

Na ugyanazen a példán tovább mehetünk. Mi van ha lokális kezdjük ezeket a fájlokat tárolni? Gondolom mindenki találkozott már hasonló fájlnevekkel:

elso_beadasom.docx
masodik_beadasom.docx
masodik_beadasom (1).docx
masodik_beadasom (1) Javított.docx
masodik_beadasom (1) Javított másolata.docx
asd.docx
asdasd.docx
asdasdasdasd.docx

Ha ügyesek vagyunk még mappákat is készítünk és dátumot is hozzá cimkézünk.

2020/
  09/
    13/
      elso_beadasom.docx
    19/
      masodik_beadasom_felkesz.docx
    20/
      masodik_beadasom.docx
      masodik_beadasom_javitott.docx
      masodik_beadasom_vegleges.docx
    ideiglenes/
      asd.docx
      asdasd.docx
      asdasdadsads.docx

Persze az operációs rendszer képes dátum alapján rendezni, és megspórol nekünk pár lépést, de mi van ha ezt valakinek el is szeretnénk küldeni? Mi van ha a módosítás dátuma közben módosul? Hogyan biztosítjuk, hogy közben nem sérülnek a fájlok?

Ezekre megoldást adnak a különböző verziókezelő rendszerek.
Többek közt dolguk, hogy fájljaink számon tartsák, ahogy például kézileg tettük.

Milyen verzió kezelő rendszereink lehetnek?

Helyi

Erre a fenti példa legjobb példa. Vannak különböző verziói a fájlunknak és ezeket valamilyen adatbázisban rögzítjük.

Local Version Control Systems

Ilyen az RCS

Központosított

Ez már egy fokkal okosabb. A különböző verziókat a központi szerverre rakjuk fel és onann szedjük le. Például van egy Fájlszerverünk amit minden gépről elérnek az emberek és oda dolgoznak közösen.
Érezhető probléma, hogy így ha meghal a központi szerver, akkor mindent elvesztünk. Továbbá probléma lehet, hogy egymás munkáját felülírjük, szerencsére egy jó rendszernél erről értesítést kapunk, hozzá és nem felülírjuk a módosításaink.

Centralized Version Control Systems

Megosztott

Na és itt lépünk be ma is használt Git világába. Ennél a megoldásnál már az a trükk, hogy mindenkinek meg van a teljes projekt az összes verziójával. Felmerül, hogy na de akkor honnan szedjük le a legújabb verziót? Különböző megoldások léteznek, például a fejlesztők a módosításokat azonnal megosztják egymással (pl.: p2p Torrenthez hasonló módon) vagy kijelölnek egy központi szervert amivel mindenki szinkronban van. Ilyen például a Github vagy a Gitlab.
Csak megjegyzem, de akár a módosításokat Emailben is ellehet küldeni és a szoftver automatikusan megcsinálja a többi a mi részünkön.

Distributed Version Control Systems

Előző | Következő