Poglavlje 2. Osnovni Kontrola-Verzija Koncepti

Sadržaj

Spremište
Modeli verzionisanja
Problem Fajl-Deljenja
Zaključaj-Menjaj-Otključaj rešenje
Kopiraj-Menjaj-Stopi rešenje
Šta Subverzija radi?
Subverzija u akcija
Radna kopija
URL spremišta
Revizije
Kako radna kopija prati spremište
Zaključak

Ovo poglavlje je malo izmenjena verzija istog poglavlja u Subverzionoj knjizi. Onlajn verzija Subverzione knjige je dostupna ovde:http://svnbook.red-bean.com/.

Ovo poglavlje je kratak, neobavezan uvod u Subverziju. Ako ste novi u kontroli verzija, ovo poglavlje je sigurno za vas. Počinjemo diskusijom o opštem konceptu kontrole verzija, rad nas vodi u specifične ideje unutar Subverzije, i prikazuje neke jednostavne primere Subverzije pri korišćenju.

Uprkos tome što primere u ovom poglavlju prikazuju ljudi koji dele kolekcije izvornog koda programa, imajte na umu da Subverzija može upravljati bilo kojom vrstom kolekcija fajlova - nije ograničena na pomoć kompjuterskim programerima.

Spremište

Subverzija je centralizovan sistem za deljenje informcija. U srži je spremište, koje je centralno stovarište podataka. Spremište smešta informacije u obliku fajlsistem stabla - tipična hijerarhija fajlova i imenika. Bilo koji broj klijenata spaja se na spremište i čita ili upisuje u te fajlove. Upisivanjem podataka klijent omogućava da informacija bude dostupna drugima; čitanjem podataka klijent prima informacije od drugih.

Slika 2.1. Tipični klijent/server sistem

Tipični klijent/server sistem

Dakle zašto je ovo interesantno? Zato što je ovo pesma od definicije tipičnog fajl servera. I svakako, spremište je vrsta fajl servera, ali nije to vaš uobičajen soj. Šta čini Subverziono spremište specijalnim je da ono pamti sve izmene ikad upisane u njega: sve izmene svakog fajla, i čak izmene samog stabla imenika, kao što je dodavanje, brisanje, i preuređenje fajlova u imenika.

Kada klijent čita podatke iz spremišta, on normalno vidi samo zadnju verziju stabla fajlsistema. Ali klijent takođe ima mogućnost da vidi prethodno stanje fajlsistema. Na primer, klijent može postaviti istorijska pitanja kao, „šta je ovaj imenik sadržao prošle srede?“, ili „koja je poslednja osoba koja je menjala ovaj fajl, i koje izmene je uradila?“ Ovo je vrsta pitanja koja su srce svakog sistema kontrole verzija: sistema koji su dizajnirani da aktivno beleže i prate izmene podataka.