2024. április 25., csütörtök

Gyorskeresés

Útvonal

Cikkek » Számtech rovat

Verziókövetés

Az internetes közös munka egy projekten megkívánja a változtatások egyszerű könyvelését.

[ ÚJ TESZT ]

A verziókövetés lényege


A tároló

Ha egy csoport közösen dolgozik egy projekten, szükségessé válik a változtatások nyomonkövetése, ellenőrzése. Verziókövetés alkalmazásával ez egyszerűen megoldható. Láthatjuk ki melyik fájlt módosította, mikor, miért, a változtatások pedig könnyen összevethetőek egymással.

MEGJEGYZÉS: A cikkemben azokat a parancsokat, amelyek internetkapcsolatot igényelnek, egy földgömb ikonnal fogom jelölni, így: .

A fő probléma
Képzeljünk el egy távoli szerveren tárolt fájlt (F). Képzeljünk még el két munkatársat (A és B), akik ezen dolgoznak. A két munkatárs elkezd dolgozni a fájlon, majd A feltölti a saját módosításait. Ebben a pillanatban a szerveren F(a), A-nál F(a), de B-nél csak F van. Mikor B feltölti a saját módosításait, a A változásai felülíródnak (szerver: F(b), A-nál F(a), B-nél F(b)). Ez végzetes hiba, így nem lehet közösen dolgozni.
Ezért jó a verziókövetés. Mikor B feltöltené a saját módosításait, egy hibaüzenetbe ütközik, miszerint az a fájl, amibe ő módosított, régebbi, mint a szerveren legújabb. Így B-nek először át kell néznie A változtatásait, összefűzni a sajátjával, majd feltölteni. Ez biztosítja, hogy mindkettőjük változtatása bekerül. (Persze előfordulhat, hogy B töröl A módosításaiból, de már saját megfontolásból, nem véletlenül.)

A változatok
Amikor valaki könyvel egy fájlt a szerverre, az egy újabb változatot kap. Ezt egy szám jellemzi, amely minden feltöltéssel növekszik (azok a fájlok száma is növekszik, amelyek nem lettek módosítva). A változatokat lehet egymással összevetni.

Például: van három fájlunk, név szerint logout, prohardver és gány. Mindegyik az 1-es állapotban van. Ha módosítjuk a logout fájlt, majd feltöltjük, az egész tároló a 2-es állapotba kerül. Azonban a prohardver és gány fájlok 2-es és 1-es állapota megegyezik egymással. Ez a módszer biztosítja, hogy sok változtatás is tárolható kis helyigény mellett (előfordulnak nagy tárolókban olyan fájlok, amelyek 300-500 könyvelés alatt is megőrzik eredeti állapotukat. Ezek csak egyszer tárolódnak, majd a további (nem módosuló) állapotok megjelölésre kerülnek.)

Fogalmak
Repository (tároló): egy távoli szerver, ezen találhatóak a fájlok
Revision (változat): a szerveren található fájlok egy adott változata
Commit (elkönyvelés): a helyi változtatások szerverre feltöltése
HEAD revision (fő változat): a szerveren található legújabb állapot
BASE revision (alapváltozat): a munkakönyvtárban található legfrissebb állapot
Differences (eltérésmutatás): két különböző állapot összevetésének naplója
Merge (összefűzés): két különböző változat egybefűzése (előfordul, hogy nem sikerül tökéletesen, ilyenkor összetűzés (conflict) alakul ki)
Conflict (összetűzés): tökéletlen összefűzés (merge) során kialakuló helyzet
Resolve (feloldás): az összetűzés (conflict) megoldása (ilyenkor a munkatárs könyvelés előtt átnézi a konfliktusba került módosításokat és végrehajt egy sikeres összefűzést)
Checkout: a távoli szerver egy adott állapotának lemásolása a gépeden található munkakönyvtárba
Working copy (munkakönyvtár): a fájlokat tartalmazó mappa a számítógépeken, ennek tartalma kerül könyvelésre a szerverre.
Trunk (törzs): a fő fejlesztési ág
Branch (ág): a fő ággal és egyéb ágakkal párhuzamosan fejlesztett ágak
Tag (megjelölt változat): egy lezárt fejlesztési ág vagy kiadás mappája

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.