Idi na test drajv

Ovo poglavlje vam pokazuje kako da isprobateneke od često korišćenih osobina malih test spremišta. Priridno je da on ne objašnjava sve - to je samo Brzi Početni Vodič u stvari. Kada ga pokrenete treba da iskoristite vreme da pročitate ostatak ovog vodiča, koji vas vodi kroz stvari sa mnogo više detalja. On takođe objašnjava više o podešavanju odgovarajućeg Subverzionog servera.

Kreiranje spremišta

Za realne projekte imate negde sigurno podešavanje spremišta i Subverzioni server da ga kontroliše. Zbog ovog tutorijala nameravamo da koristimo Subverzione lokalne osobine spremišta koje omogućavaju direktan pristup spremištu kreiranom na hard drajvu bez upotrebe servera.

Najpre kreirajte novi prazan folder na vašem PC. On može biti bilo gde, ali za ovaj tutorijal zvaćemo ga C:\svn_repos. Zatim desni klik na novi folder i iz kontekst menija izaberite TortoiseSVNKreirajte spremište ovde.... Spremište tada kreirano unutar foldera spremno je za korišćenje. Takođe ćemo kreirati uobičajenu internu strukturu foldera kliknuvši na Kreirajte strukturu foldera button.

Važno

Upotreba lokalnog spremišta je veoma korisna za testiranje i razvoj ali, izuzev ako radite kao pojedinačni saradnik na jednom PC, vi ćete uvek koristiti odgovarajući Subverzioni server. Male kompanije dolaze u iskušenje da izbegnu radna podešavanju servera već da se samo pristupi spremištu na mrežnoj podeli. Nikad to ne radite. Pročitajte odeljak pod imenom „Pristupanje spremištu na mrežnom deljenom prostoru“ da nađete zašto je to loša ideja ikako podesiti server.

Uvoženje projekta

Sada imamo spremište, ali ono je potpuno prazno u ovom trenutku. Uzmimo da imamo skup fajlova u C:\Projects\Widget1 koje želimo dodati. Odimo do Widget1 foldera pomoću Eksplorera i desni klik na njega. Sada izaberemo TortoiseSVNUvoz... što daje dijalog

Slika 1.2. Uvozni dijalog

Uvozni dijalog


Subverziono spremište je referisano sa URL koji nam omogućava da specificiramo spremište bilo gde na Internetu. U ovom slučaju potrebna nam je tačka na našem lokalnom spremištu koja ima URL file:///c:/svn_repos/trunk, gde dodajemo naš projekat nazvan Widget1. Primetimo da ima 3 kosih crta posle file: i da se prave kose crte koriste unutar.

Ostale važne osobine ovog dijaloga je Uvezi poruku boks koji vam dozvoljava da unesete poruku koja opisuje šta radite. Kada dođete pogledate kroz istoriju projekta, ove poruke urezivanja su vrednosni vodič koje izmene su napravljene i zašto. U ovom slučaju možemo reći nešto jednostavno kao Uvoz Widget1 projekta. Kliknite na OK i folder je dodat u spremište.

Preuzimanje radne kopije

Sada kad imamo projekat u spremištu potrebno je da kreiramo radnu kopiju za korišćenje za svakodnevni rad. Primetimo da čin uvoza foldera ne ubacuje automatski taj folder u radnu kopiju. Subverzioni izraz za kreiranje sveže radne kopije je Preuzimanje. Preuzećemo Widget1 folder vašeg spremišta u razvojni folder PC nazvanog filename>C:\Projects\Widget1-Dev

Važno

Uobičajeno podešavanje, meni stavka preuzimanja nije smeštena u TortoiseSVN submeniju ali je prikazana na vrhu menija pretraživača. ToroiseSVN komande koje nisu u submeniju imaju SVN pripremljen: SVN preuzimanje...

Primetite da se pojava ovog foldera razlikuje od originalnogfoldera. Svaki fajl ima zelenuček markicu u levom donjem uglu. Ovo su TortoiseSVN status ikone koje su prisutne samo u radnoj kopiji. Zeleno stanje indicira da je fajl neizmenjen prema verziji u spremištu.

Izrada izmena

Vreme je da se radi posao. U Widget1-Dev folderu počinjemo uređivanje fajlova - recimo da uradimo izmene u Widget1.c i ReadMe.txt. Primetimo prekrivne ikone na ovim fajlovima su izmenjene u crveno, indicirajući te promene urađene lokalno.

Ali kakvesu izmene? Desno kliknite na izmenjene fajlove i izaberite TortoiseSVNDiff... TortoiseSVN alat za poređenje fajla pokreće, prikazujući tačno koje linijesu promenjene.

Slika 1.3. Pregledač fajl razlika

Pregledač fajl razlika


Dobro, mi smo srećni sa izmenama, uskladimo spremište. Ova akcija je označena kao Urezivanje izmene. Desni klik na Widget1-Dev folder i izaberimo TortoiseSVNUrezivanje. Dijalog urezivanja listaizmenjene fajlove sa čekboksom. Možete želetida izaberete samo podskup ovih fajlova, ali u ovom slučaju idemo da urežemo izmene na oba fajla. Unesite poruku da opišete koje izmene su obuhvaćene i kliknite na OK. Dijalog napredovanja prikazuje fajlove poslatih u spremište i završenih.

Dodavanje još fajlova

Kako projekat raste biće vam potrebno dadodate nove fajlove - recimo da dodajete neke nove osobine u Extras.c i dodajete reference u postojeći Makefile. Desno kliknite na folder i TortoiseSVNDodaj. Dodaj dijalog sada prikazuje sve neverzionisane fajlove i možeteizabrati koji želite da dodate. Drugi način je da se dodaju fajlovi desnim klikom na sam fajl i izborom ortoiseSVNDodaj.

Sada kada odete u folder urezivanja, novi fajl je prikazan kao Dodat ipostojeći fajl kao Izmenjen. Primetimo da možete dvostruko kliknuti na izmenjeni fajl da proverimo tačno koje izmene su urađene.

Pregled istorije projekta

Jedna od najkorisnijih osobina TortoiseSVN je dijalog dnevnika. On vam prikazuje listu urezivanja koje ste uradili u fajlu ili folderu i prikazuje te detaljne poruke urezivanja koje ste uneli (vi ste uneli poruke urezivanja kako je sugerisano? Ako niste, vidite zašto je to važno).

Slika 1.4. Dijalog dnevnika

Dijalog dnevnika


OK, malo sam obmanjivao i korišćen je ekran TortoiseSVN spremišta.

Gornji panel prikazuje listu revizija urezanih sapočetkom poruke urezivanja.Ako izaberete jednu od ovih revizija, srednji panel će prikazati celu poruku dnevnika za revizijui donji panel će prikazati listu izmenjenih fajlova i foldera.

Svaki od ovih panela ima kontekst meni koji vas snabdeva sa mnogo načina korišćenja informacija. U donjem panelu možete vostruko kliknuti na fajl da vidite tačno šta je promenjeno u toj reviziji. Pročitajteodeljak pod imenom „Revizioni dijalog dnevnika“ da dobijete celu priču.

Poništavanje izmena

Jedna osobina svih sistema kontrole revizija je da vam omogućavaju vraćanje izmena koje ste ranije uradili. Kao što očekujute, TortoiseSVN olakšava pristup tome.

Ako želite da pročitate izmene koje još nisu urezane i resetujete fajl na način kakav je bio pre početka uređivanja, TortoiseSVNVrati je vaš prijatelj. Ovo odbacuje vaše izmene (u korpu za otpatke, u ovom slučaju) i vraća urezanu verziju sa kojom ste startovali. Ako želite da pročitate samo neke izmene možete koristiti TortoiseMerge da pregledate razlike i selektivno vratite izmenjene linije.

Ako želiteda vratite efekte posebne revizije, počnite sa dijalogom dnevnika i nađite okrivljene revizije. Izaberite Kontekst meni Vraćanje izmena iz ovihrevizija i ove izmene će biti vraćenje.