Yksi tavallisimmista vaatimuksista projektityössä on kyetä näkemään, mikä on muuttunut. Saattaa olla tarpeen verrata saman tiedoston kahta eri versiota tai kahta eri tiedostoa. TortoiseSVN:n mukana tulee työkalu nimeltä TortoiseMerge, jonka avulla voi vertailla tekstitiedostojen välisiä eroja. Kuvatiedostojen vertailuun TortoiseSVN:n mukana tulee puolestaan työkalu nimeltä TortoiseIDiff. Voit tietysti myös halutessasi käyttää muita ohjelmia.
Jos haluat nähdä omat työkopioosi tekemäsi muutokset, valitse Resurssienhallinnan kontekstivalikosta komento → .
Jos haluat nähdä, mitä muutoksia päähaarassa (olettaen, että työskentelet haarassa) tai jossain tietyssä haarassa (olettaen, että työskentelet päähaarassa) on tapahtunut, voit käyttää Resurssienhallinnan kontekstivalikkoa. Pidä Shift-näppäintä pohjassa napsauttaessasi hiiren oikealla näppäimellä tiedostoa. Valitse sitten komento → . Esiin aukeaa ikkuna, johon voit syöttää paikantimen, johon haluat verrata paikallista tiedostoa.
Voit myös avata arkistoselaimen ja valita kaksi verrattavaa tiedostopuuta, ehkäpä kaksi merkittyä versiota tai haaran / merkityn version ja päähaaran. Arkistoselaimen kontekstivalikon komento ”Kansioiden vertailu”.
. Lisätietoja löydät luvustaJos haluat nähdä erot tietyn version ja työkopiosi välillä, avaa versioloki, valitse haluamasi versio ja anna kontekstivalikosta komento
.Jos haluat verrata viimeisintä toimitettua versiota työkopioosi (olettaen, että työkopio ei ole muuttunut), anna kontekstivalikon komento
→ . Vertailu suoritetaan viimeisintä toimitusaikaa (talletettu työkopioon) edeltävän version ja kantaversion (BASE) välillä. Toisin sanoen näet muutokset, jotka johtivat nykyiseen työkopioon. Komento ei näytä työkopiotasi uudempia muutoksia.Jos haluat nähdä erot kahden, jo arkistoon toimitetun version välillä, avaa versioloki ja valitse vertailtavat versiot (käyttäen valintaa normaalisti Ctrl-näppäintä). Valitse sitten kontekstivalikon komento .
Jos teet tämän kansion versiolokista, näyttöön aukeaa Vertaa versiota-ikkuna, jossa luetellaan kansiossa olevat muuttuneet tiedostot. Lue lisää luvusta ”Kansioiden vertailu”.
Jos haluat nähdä kaikki tietyssä versiossa tehdyt muutokset yhdellä kertaa, voit käyttää Unified diff-komentoa, joka näyttää erot (muutaman kontekstirivin kera) GNU Patch-muodossa. Eroja on vaikeampi tulkita kuin visuaalisessa vertailussa, mutta toisaalta ne ovat kaikki yhdessä. Valitse versiolokista haluttu versio ja anna sen jälkeen kontekstivalikosta komento
."Jos haluat vertailla kahta eri tiedostoa, voit tehdä sen suoraan Resurssienhallinnasta valitsemalla molemmat tiedostot (käyttäen Ctrl-näppäintä). Valitse sitten kontekstivalikon komento → .
Jos verrattavat tiedostot eivät ole samassa kansiossa, käytä komentoa Ctrl painettuna.
→ merkitäksesi ensimmäisen vertailtavan tiedoston. Siirry sen jälkeen toisen tiedoston luo ja käytä komentoa → . Poistaaksesi merkityn tiedoston anna komento → pitämällä samalla näppäinJos haluat verrata työkopiosi tiedostoa tiedostoon jossain Subversion-arkistossa, voit tehdä niin suoraan Resurssienhallinnasta valitsemalla tiedoston ja pitämällä pohjassa Shift-näppäintä samalla kuin avaat kontekstivalikon hiiren oikealla näppäimellä. Anna lopuksi komento → . Voit tehdä saman asian työkopion työkopion kansiolle. TortoiseMergenäyttää erot samaan tapaan kuin paikkatiedoston - luettelona muuttuneista tiedostoista, joita voit katsella yksi kerrallaan.
Jos haluat nähdä erojen lisäksi myös tekijän, version ja muutosten päiväyksen, voit yhdistää vertailun ja tekijöiden selvityksen versiolokissa. Lue yksityiskohdat luvusta ”Vertaa ja selvitä tekijät”.
TortoiseSVN:n mukana tulevat työkalut eivät tue kansiohierarkioiden välisten erojen vertailua. Jos sinulla kuitenkin on työkalu, joka tukee tällaista, voit käyttää sitä sen sijaan. Luvussa ”Erilliset vertailu- ja yhdistämistyökalut” kerromme muutamista käyttämistämme työkaluista.
Jos olet määritellyt ulkoisen vertailuohjelman, voit käyttää vaihtoehtoista työkalua pitämällä Shift -näppäimen pohjassa antaessasi Vertaa-komennon. Lue luvusta ”Ulkoiset ohjelmat”, miten ulkoiset vertailutyökalut määritellään.
Jossain vaiheessa projektia saattaa tulla tarpeelliseksi muuttaa rivinloppumerkit CRLF
-muodosta LF
-muotoon. Saatat myös muuttaa jonkun lohkon sisennystä. Valitettavasti molemmat toimenpiteet merkitsevät suuren määrän rivejä muuttuneiksi, vaikka itse sisällön merkitys ei muutu. Seuraavat asetukset auttavat tällaisissa tilanteissa vertailtaessa ja sovellettaessa paikkatiedostoja. Valinnat löytyvät komentojen Yhdistä ja Selvitä tekijät yhteydestä, samoin kuin TortoiseMerge-työkalun asetuksista.
Älä välitä rivinvaihdoista ohittaa muutokset, jotka johtuvat pelkästään erilaisesta rivinlopetustyylistä.
Vertaa tyhjämerkkejä tulkitsee kaikki muutokset sisennyksessä ja rivin sisäisissä tyhjämerkeissä lisättyinä/poistettuina riveinä.
Ohita muuttuneet tyhjämerkit jättää pois muutokset, jotka johtuvat pelkästään tyhjämerkkien määrän tai tyypin muutoksesta, esim. sisennysmerkkien muuttumisesta tabulointimerkeistä välilyönneiksi. Tyhjämerkkien lisääminen paikkaan, missä niitä ei ennen ollut, tai kaikkien tyhjämerkkien poisto luetaan yhä muutokseksi.
Ohita kaikki tyhjämerkit jättää huomiotta kaikki tyhjämerkeistä johtuvat muutokset.
Kaikki rivit, joiden sisältö on muuttunut, sisältyvät tietenkin aina vertailuun.
Kun valitset kaksi alipuuta arkistoselaimesta, tai kun valitset jonkin kansion kaksi eri versiota loki-ikkunasta, voit antaa komennon → .
Ikkuna näyttää listan kaikista muuttuneista tiedostoista ja sallii yksittäisten tiedostojen vertaamisen tai muutosten tekijöiden selvittämisen kontekstivalikon kautta.
Voit viedä muutospuun, mistä voi olla hyötyä, jos joudut lähettämään jollekulle projektisi puurakenteen, joka sisältää vain muuttuneet tiedostot. Toiminto koskee vain valittuja tiedostoja, joten joudut valitsemaan haluamasi tiedostot - yleensä kaikki - ja antamaan sitten komennon → . Sinulta kysytään lopuksi muutospuun talletuspaikka.
Voit myös siirtyä tietylle riville käyttämällä komentoa
→ .Jos haluat viedä tiedostolistan ja toimenpiteet (muutettu, lisätty, poistettu) samalla kertaa, voit tehdä sen komennolla → .
Ikkunan yläosassa oleva nuolipainike sallii vertailun suunnan muuttamisen. Voit siis näyttää muutokset, joiden avulla A:sta saadaan B, tai, halutessasi, miten B:stä saadaan A.
Versionumeroilla varustettuja painikkeita voi käyttää asettamaan erilainen versioväli. Aina kun vaihdat väliä, lista vertailtavien versioiden välissä muuttuneista kohteista päivittyy automaattisesti.
Jos tiedostonimilista on hyvin pitkä, voit käyttää etsintäkenttää supistamaan sitä. Huomaa, että haku on yksinkertainen tekstihaku, joten jos haluat rajoittaa listan C-tiedostoihin, syötä .c
eikä *.c
.
Tekstitiedostojen vertailuun on saatavilla useita työkaluja, muiden muassa TortoiseMerge, mutta usein on tarpeen nähdä, miten kuvatiedosto on muuttunut. Tätä varten kehitettiin TortoiseIDiff.
Komento → mille tahansa yleiselle kuvaformaatille käynnistää TortoiseIDiff-työkalun, jolla kuvia voi verrata. Oletusarvoisesti kuvat näytetään rinnakkain, mutta Näytä-valikon tai työkalurivin avulla voit vaihtaa ne näkymään pinottuna; voit myös halutessasi näyttää kuvat sekoitettuna päällekkäin.
Käytössä on tietenkin myös zoomaus- ja siirtotyökalut. Voit siirtää kuvaa raahaamalla sitä hiiren vasemmalla napilla. Jos valitset asetuksen Kytke kuvat yhteen , niin siirtokontrollit (vierityspalkit, hiiren rullapyörä) kytkeytyvät molemmissa kuvissa yhteen.
Kuvan tietolaatikko näyttää yksityiskohtia kuvatiedostosta, kuten koko pikseleinä, tarkkuus ja värisyvyys. Jos tietolaatikko on tiellä, komento
→ piilottaa sen. Samat tiedot näytetään työkaluvihjeessä, kun pidät hiirtä hetken kuvaotsikon päällä.Kun kuvat ovat päällekkäin, niiden suhteellista intensiteettiä (alpha) kontrolloidaan ikkunan vasemmalla puoliskolla olevan liukukytkimen avulla. Voit napsauttaa minne tahansa liukukytkimen päällä tai säätää sitä muuttaaksesi sekoitusta interktiivisesti. Toiminto CTRL+SHIFT-Hiiren vieritysrulla vaihtaa myös sekoitusta.
Liukusäätimen yläpuoinen painike vaihtaa 0% ja 100% sekoituksien välillä, ja jos kaksoisnapsautat painiketta, sekoitus alkaa vaihdella automaattisesti sekunnin välein, kunnes napsautat painiketta uudelleen. Tästä voi olla hyötyä pienten muutosten etsinnässä.
Joskus on hyödyllistä nähdä erot sekoituksen sijaan. Sinulla saattaa olla esim. kaksi piirilevykaavion versiota ja haluat tietää, mitkä osat ovat muuttuneet. Jos otat pois käytöstä sekoitustilan, ero näytetään pikselien väriarvojen XOR-operaationa. Muuttumattomat alueet ovat valkoisia ja muutetut alueet värjättyjä.
Kun haluat vertailla muuta kuin tekstiä sisältäviä dokumentteja, on normaalisti käytettävä ohjelmaa, jolla dokumentti luotiin, koska vain se tuntee dokumentin rakenteen. Yleisesti käytetyissä Microsoft Office- ja Open Office -ympäristöissä onkin mukana vertailutuki, ja TortoiseSVN sisältää komentojonoja, joiden avulla ohjelmat käynnistyvät oikeilla asetuksilla, kun vertailet niillä tehtyjä dokumentteja. Voit tarkistaa, mitä tiedostotyyppejä tuetaan ja lisätä omiasi komennolla Ulkoiset ohjelmat -osion painiketta .
→ ja napsauttamallaJos olet asentanut Click-to-Run -version Office 2010-ympäristöstä ja koetat vertailla dokumentteja, saatat saada seuraavan Windows Script Host -virheilmoituksen: ”ActiveX component can't create object: word.Application”. Mitä ilmeisimmin Office on asennettava MSI-versiona, jotta vertailu toimisi.
Jos TortoiseSVN:n mukana tulevat työkalut eivät tee kaikkia haluamiasi asioita, koeta jotain toista avoimen lähdekoodin- tai kaupallista työkalua. Jokaisella on oma suosikkinsa, eikä seuraava luettelo ole millään muotoa täydellinen, mutta tässä on muutamia harkitsemisen arvoisia työkaluja:
Perforce on kaupallinen versionhallintajärjestelmä, mutta sen vertailu/yhdistämistyökalua saa käyttää ilmaiseksi. Lisätietoa löytyy Perforce-sivustosta.
KDiff3 on ilmainen vertailutyökalu, joka osaa myös käsitellä hakemistoja. Voit noutaa sen osoitteesta http://kdiff3.sf.net/.
SourceGear Vault on kaupallinen versionhallintaohjelmisto, mutta voit käyttää sen diff/merge -työkalua ilmaiseksi. Lisätietoa osoitteessa https://www.sourcegear.com/diffmerge/.
ExamDiff Standard on ilmaisohjelma. Se osaa käsitellä tiedostoja, muttei hakemistoja. ExamDiff Pro on maksullinen julkisohjelma (shareware), joka lisää tähän joukon lisäominaisuuksia (mm. hakemistojen käsittely ja tiedostojen muokkaus). Molemmat ohjelmat tuntevat Unicode-merkistön versiosta 3.2 eteenpäin. Void ladata ne yrityksen sivuilta osoitteesta http://www.prestosoft.com/.
Kuten ExamDiff Pro, Beyond Compare on mainio maksullinen tiedostojen vertailuohjelma, joka osaa käsitellä hakemistoeroja ja Unicode-merkistöä. Lataa se osoitteesta Scooter Software.
Araxis Merge on hyödyllinen kaupallinen työkalu vertailuun ja tiedostojen/kansioiden yhdistämiseen. Se osaa kolmisuuntaisen vertailun yhdistettäessä ja tuntee synkronointilinkit, joita voi käyttää funktioiden järjestyksen muuttuessa. Lataa ohjelma seuraavasta osoitteesta: Araxis.
Lue kappaleesta ”Ulkoiset ohjelmat” lisätietoa työkalujen ottamisesta käyttöön TortoiseSVN:ssä.