Liite D. TortoiseSVN-automatisointi

Sisällys

TortoiseSVN-komennot
Tsvncmd-paikantimien käsittely
TortoiseIDiff-komennot
TortoiseUDiff-komennot

Koska kaikkia TortoiseSVN-komentoja voi ohjata komentorivivalitsimilla, voit automatisoida sitä komentojonoilla tai käynnistää haluamiasi komentoja ja ikkunoita muista ohjelmista (esim. tekstinkäsittelyohjelmastasi).

Tärkeää

Muista, että TortoiseSVN on graafinen käyttöliittymä Subversioniin - niinpä tämä automaatio-opas näyttääkin, miten saada TortoiseSVN:n ikkunat aukeamaan odottamaan käyttäjän syötteitä. Jos haluat käyttää komentoja, jotka eivät tarvitse syötteitä, sinun on sen sijaan käytettävä virallista Subversion-komentoriviasiakasta.

TortoiseSVN-komennot

TortoiseSVN:n käyttöliittymän nimi on TortoiseProc.exe. Kaikki komennot määritellään valitsimella /command:abcd, missä abcd on tarvittava komento. Useimmat komennot tarvitsevat ainakin yhden tiedostopolun toimiakseen; se määritellään valitsimella /path:"joku\polku". Seuraavassa taulukossa komento viittaa valitsimeen /command:abcd ja polku puolestaan valitsimeen /path:"joku\polku".

Jos valitsin /command:abcd jätetään antamatta, käynnistyy projektiseurain. Mikäli valitsin /tray annetaan, projektiseurain käynnistyy piilotettuna ilmoitusalueelle.

Koska jotkut komennot voivat ottaa parametrikseen useita polkuja (esim. useiden nimettyjen tiedostojen toimitus arkistoon), valitsin /path ymmärtää useita polkuja, kunhan ne erotetaan merkillä *.

Voit myös luoda tiedoston, jossa on joukko rivinvaihdoin eroteltuja polkuja. Tiedoston on oltava UTF-16-muodossa, ilman BOM -merkintää. Jos välität ko. tiedoston, käytä valitsinta /pathfile valitsimen /path sijaan. Jos haluat, että tiedosto poistetaan komennon suorituksen päätyttyä, anna valitsin /deletepathfile. Muussa tapauksessa sinun on poistettava tiedosto itse.

Edistymiskkuna, jota käytetään arkistotoimituksiin, päivityksiin ja muille komennoille, pysyy komennon suorituksen päätyttyä yleensä auki, kunnes käyttäjä napsauttaa OK-painiketta. Tätä voidaan muuttaa asettamalla vastaava valitsin asetusikkunassa. Asetuksen muuttaminen sulkee kuitenkin edistymisikkunan, käynnistitpä komennon komentojonosta tai TortoiseSVN-kontekstivalikosta.

Jos haluat, että TortoiseSVN käyttää erilaista määrittelytiedostoa, käytä valitsinta /configdir:"polku\määrittely\hakemistoon". Tämä korvaa oletuspolun (myös mahdollisista rekisteriasetuksista välittämättä).

Voit käyttää valitsinta /closeonend sulkeaksesi edistymisikkunan automaattisesti komennon päättyessä muuttamatta pysyvää asetusta.

  • /closeonend:0 älä sulje ikkunaa automaattisesti

  • /closeonend:1 sulje ikkuna automaattisesti, jos komento päättyy virheittä

  • /closeonend:2 sulje ikkuna automaattisesti, jos komento päättyy ilman virheitä ja ristiriitoja

  • /closeonend:3 sulje ikkuna automaattisesti, jos komento päättyy ilman virheitä, ristiriitoja tai yhdistämisiä

Käytä valitsinta /closeforlocal sulkeaksesi edistymisikkunan automaattisesti onnistuneiden paikallisten operaatioiden jälkeen.

Alla oleva taulukko luettelee kaikki komennot, jotka voidaan käynnistää TortoiseProc.exe-komentoriviltä. Kuten yllä on kuvattu, näitä tulee käyttää muodossa /command:abcd. Etuliite /command on jätetty taulukosta pois tilan säästämiseksi.

Taulu D.1. Komennot ja niiden valitsimet

KomentoKuvaus
:aboutNäyttää Tietoja-ikkunan. Tämä aukeaa myös, jos komentoa ei anneta.
:log

Avaa loki-ikkunan. Valitsin /path määrittelee tiedoston tai kansion, jolle loki näytetään. Käytettävissä on myös muita valitsimia:

  • /startrev:xxx,

  • /endrev:xxx,

  • /strict kytkee 'pysäytä kopion kohdalla' -valinnan,

  • /merge kytkee 'sisällytä yhdistetyt versiot' -valinnan,

  • /datemin:"{datestring}" asettaa suodattimen aloituspäiväyksen, ja

  • /datemax:"{datestring}" asettaa suodattimen lopetuspäiväyksen. Päiväyksen muoto on sama kuin svn-päiväyksissä käytetty.

  • /findstring:"filterstring" täyttää suodatustekstin,

  • /findtext pakottaa suodattimen käyttämään tekstiä säännöllisten lausekkeiden sijaan, tai

  • /findregex pakottaa suodattimen käyttämään säännöllisiä lausekkeita tekstin sijaan, ja

  • /findtype:X, missä X on numero väliltä 0-511. Numerot ovat seuraavien vaihtoehtojen summa:

    • /findtype:0 suodata kaikesta

    • /findtype:1 suodata viesteistä

    • /findtype:2 suodata poluista

    • /findtype:4 suodata tekijöistä

    • /findtype:8 suodata versioista

    • /findtype:16 ei käytössä

    • /findtype:32 suodata vikatunnuksista

    • /findtype:64 ei käytössä

    • /findtype:128 suodata päiväyksistä

    • /findtype:256 suodata päivämääräväliltä

  • Jos valitsin /outfile:polku\tiedostoon on annettu, valitut versiot kirjoitetaan annettuun tiedostoon, kun loki-ikkuna suljetaan. Versiot kirjoitetaan yhdistämisikkunan versioiden kuvaamiseen käyttämässä muodossa.

An svn date revision can be in one of the following formats:

  • {2006-02-17}

  • {15:30}

  • {15:30:00.200000}

  • {"2006-02-17 15:30"}

  • {"2006-02-17 15:30 +0230"}

  • {2006-02-17T15:30}

  • {2006-02-17T15:30Z}

  • {2006-02-17T15:30-04:00}

  • {20060217T1530}

  • {20060217T1530Z}

  • {20060217T1530-0500}

:checkoutAvaa työkopion noutoikkunan. Valitsin /path määrittää kohdehakemiston ja /url paikantimen, josta työkopio haetaan. Jos annat valitsimen /blockpathadjustments, polkujen automaattinen korjaus estetään. Valitsin /revision:XXX määrittää noudettavan version.
:importAvaa tuonti-ikkunan. Valitsin /path kertoo hakemiston, jossa tuotavat tiedostot sijaitsevat. Voit myös antaa lokiviestin valitsimella /logmsg. Jos et halua antaa lokiviestiä komentorivillä, käytä valitsinta /logmsgfile:polku, missä polku kertoo tiedoston, joka sisältää lokiviestin.
:updatePäivittää työkopion paikassa /path HEAD-versioon. Mikäli valitsin /rev on annettu, esiin avautuu ikkuna, johon käyttäjä voi syöttää versionumeron, johon päivitys tulisi tehdä. Interaktiivinen ikkuna voidaan ohittaa käyttämällä valitsinta /rev:1234. Muita valitsimia ovat /nonrecursive, /ignoreexternals ja /includeexternals. Valitsimen /stickydepth avulla voidaan luoda harva työkopio kertomalla, että annettu syvyys on pysyvä. Valitsinta /skipprechecks voidaan käyttää ohittamaan kaikki ennen päivitystä tehtävät tarkistukset. Sen seurauksena painike Näytä loki ei ole käytettävissä, eikä päivityksen jälkeen ole mahdollista verrata muutoksia.
:commitAvaa toimitusikkunan. Valitsin /path määrittää kohdehakemiston tai luettelon toimitettavista tiedostoista. Voit myös määritellä valitsimella /logmsg ikkunalle ennalta määritelly lokiviestin. Jos et halua välittää lokiviestiä komentorivillä, käytä valitsinta /logmsgfile:polku, missä polku viittaa tiedostoon, jossa lokiviesti on. Täyttääksesi vikatunnuskentän (olettaen, että olet integroinut TortoisSVN:n vikaseurantaohjelmaan) ennalta voit käyttää valitsinta /bugid:"vikatunnus tähän"
:addLisää tiedostot /path versionhallintaan.
:revertPeruu paikalliset muutokset työkopioon. Valitsin /path kertoo, mitkä kohteet perutaan.
:cleanupSiivoaa pois keskeytyneet tai keskeytetyt toiminnot ja poistaa lukituksen työkopiosta /path. Sinun on myös annettava valitsin /cleanup suorittaaksesi varsinaisen siivouksen. Käytä valitsinta /noui estääksesi tulosikkunan aukeamisen (ikkunassa kerrotaan joko siivouksen päättymisestä tai annetaan virheilmoitus). Valitsin /noprogressui jättää edistymisikkunan näyttämättä. Valitsin /nodlg estää siivoustoiminnon säätöikkunan näyttämisen. Käytettävissä olevat säädöt voidaan määritellä seuraavilla valitsimilla: /cleanup työkopion tilan siivous, /breaklocks lukkojen vapautus, /revert työkopion muutosten peruminen, /delunversioned, /delignored, /refreshshell, /externals, /fixtimestamps ja /vacuum.
:resolveMerkitsee valitsimen /path määrittämän ristiriitaisen tiedoston ratkaistuksi. Jos valitsin /noquestion on annettu, ratkaisu tehdään varmistamatta ensin käyttäjältä, pitäisikö se todella tehdä.
:repocreateLuo arkiston paikkaan /path
:switchAvaa vaihtoikkunan. Valitsin /path määrittää kohdehakemiston ja <placeholder-2> paikantimen, johon siirrytään.</placeholder-2>
:exportVie valitsimella /path määritellyn työkopion toiseen kansioon. Jos /path määrittää versioimattoman kansion, esiin aukeaa ikkuna, johon syötettävä paikannin viedään kansioon /path. Jos annat valitsimen /blockpathadjustments, polkujen automaattinen korjaus viennin yhteydessä estetään.
:dropexportVie paikassa /path olevan työkopion hakemistoon /droptarget. Vienti ei käytä vienti-ikkunaa vaan toimii suoraan. Valinta /overwrite ohjaa ylikirjoittamaan olemassa olevat tiedostot ilman käyttäjän vahvistusta, ja valinta /autorename määrittää, että viedyt tiedosot nimetään automaattisesti uudelleen ylikirjoituksen välttämikseksi. Valinta /extended voi olla joko localchanges pelkkien paikallisesti muuttuneiden tiedostojen viemiseksi tai versioimaton myös versioimattomien tiedostojen viemiseksi.
:dropvendorCopies the folder in /path recursively to the directory specified in /droptarget. New files are added automatically, and missing files get removed in the target working copy, basically ensuring that source and destination are exactly the same. Specify /noui to skip the confirmation dialog, and /noprogressui to also disable showing the progress dialog.
:mergeAvaa yhdistämisikkunan. Valitsin /path määrittää kohdehakemiston. Versiovälin yhdistämiseen voi käyttää seuraavia valitsimia: /fromurl:URL, /revrange:string. Kahden arkistopuun yhdistämiseen voi käyttää seuraavia valitsimia: /fromurl:URL, /tourl:URL, /fromrev:xxx ja /torev:xxx.
:mergeallAvaa Yhdistä kaikki -ikkunan. Valitsin /path määrittää kohdehakemiston.
:copyAvaa haarautumisikkunan. Valitsin /path kertoo työkopion, josta haara / merkitty versio tehdään. Valitsin /url on kohdepaikannin. Jos paikannin alkaa merkillä ^ sen oletetaan olevan suhteessa arkiston juureen. Valinta Vaihda työkopio osoittamaan haaraan / merkittyyn versioon voidaan m/switchaftercopy. Valinta Luo v voidaan m/makeparents. Voit my/logmsg lokiviestipohjan antamiseksi. Mik/logmsgfile:polku, misspolku kertoo tiedoston, miss
:settingsAvaa asetusikkunan.
:removePoistaa valitsimen /path määrittämät tiedostot versionhallinnasta.
:renameNimeää uudelleen tiedoston /path. Tiedoston uusi nimi annetaan aukeavaan ikkunaan. Välttääksesi kysymyksen samantapaisten tiedostojen nimeämisestä uudelleen, anna valitsin /noquestion.
:diffKäynnistää TortoiseSVN-asetuksissa määritellyn ulkoisen vertailuohjelman. Valitsin /path määrittää ensimmäisen tiedoston. Mikäli /path2 on annettu, vertailuohjelma vertaa näitä kahta tiedostoa. Jos /path2 jätetään pois, vertailu tehdään tiedoston /path ja sen BASE-version kanssa. Jos annetulla tiedostolla on myös ominaisuusmuutoksia, vertailutyökalu käynnistyy myös kullekin muutetulle ominaisuudelle. Valitsin /ignoreprops estää tämän. Halutessasi määritellä tarkan versionumeron, anna /startrev:xxx ja /endrev:xxx sekä mahdollisesti /pegrevision:xxx ankkuriversiota varten. Mikäli /blame on annettu ja /path2 ei, vertailu tehdään selvittämällä ensin tekijät annetuille versioille. Valitsin /line:xxx määrittää rivinumeron, joka näytetään vertailun käynnistyessä.
:shelveShelves the specified paths in a new shelf. The option /shelfname:name specifies the name of the shelf. An optional log message can be specified with /logmsg:message. If option /checkpoint is passed, the modifications of the files are kept.
:unshelveApplies the shelf with the name /shelfname:name to the working copy path. By default the last version of the shelf is applied, but you can specify a version with /version:X.
:showcompare

Paikantimista ja vertailtavista versioista riippuen komento näyttää joko unified diff-luettelon (mikäli valitsin unified on asetettu) tai luettelon muuttuneista tiedostoista. Mikäli paikantimet osoittavat tiedostoihin, komento käynnistää vertailuohjelman tiedostojen vertailemiseksi.

Valitsimet url1, url2, revision1 and revision2 ovat pakollisia. Valitsimet pegrevision, ignoreancestry, blame ja unified ovat valinnaisia.

Mikäli annetulla paikantimella on ominaisuusmuutoksia, ulkoinen vertailutyökalu käynnistetään kullekin muutetulle ominaisuudelle. Valitsin /ignoreprops estää tämän.

If a unified diff is requested, an optional prettyprint option can be specified which will show the merge-info properties in a more user readable format.

:conflicteditorKäynnistää TortoiseSVN-asetuksissa määritellyn yhdistämistyökalun valitsimella /path annetun ristiriitaisen tiedoston tarvitsemien tiedostojen kera.
:relocateAvaa Sijoita uudelleen -ikkunan. Valitsin /path määrittää uudelleen sijoitettavan työkopiopolun.
:helpAvaa käyttöohjeet.
:repostatusAvaa Tarkista muutokset -ikkunan. Valitsin /path määrittää työkopion hakemiston. Jos valitsin /remote on annettu, ikkuna ottaa yhteyden arkistoon välittömästi käynnistyttyään (ikään kuin käyttäjä olisi napsauttanut painiketta Tarkista arkisto).
:repobrowser

Käynnistää arkistoselaimen /path-valitsimella annetun työkopion paikantimeen, tai /path-valitsimen suoraan määrittämään paikantimeen.

Valitsin /rev:xxx määrittää arkistoselaimen näyttämän version. Mikäli sitä ei anneta, oletusarvona on HEAD.

Jos valitsin /path osoittaa paikantimeen, valitsin /projectpropertiespath:polku/työkopioon määrittää polun, josta luetaan ja johon käytetään projektiominaisuuksia.

Jos valitsin /outfile:polu\tiedostoon on annettu, valittu paikannin ja versio kirjoitetaan annettuun tiedostoon, kun arkistoselain suljetaan. Tiedoston ensimmäinen rivi sisältää paikantimen ja toinen rivi versionumeron tekstimuodossa.

:ignoreVie kaikki valitsimen /path määrittämät kohteet ohituslistaan, ts. lisää niille ominaisuuden svn:ignore.
:blame

Avaa Selvitä tekijä -ikkunan valitsimella /path määritellylle tiedostolle.

Jos valitsimet /startrev ja /endrev on asetettu, versioväli-ikkunaa ei näytetä, vaan ohjelma käyttää valitsimilla annettuja arvoja.

Jos valitsin /line:nnn on annettu, TortoiseBlame näyttää määritellyn rivin.

Valitsimia /ignoreeol, /ignorespaces ja /ignoreallspaces tuetaan myös.

:catTallentaa valitsimella /path annetun paikantimen tai työkopiopolun valitsimella /savepath:polku annettuun paikkaan. Versionumero annetaan valitsimella /revision:xxx; tätä voidaan käyttää hankkimaan tiedostosta tietty versio.
:createpatchCreates a patch file for the path given in /path. To skip the file Save-As dialog you can pass /savepath:polku to specify the path where to save the patch file to directly. To prevent the unified diff viewer from being started showing the patch file, pass /noview. If a unified diff is requested, an optional prettyprint option can be specified which will show the merge-info properties in a more user readable format.
:revisiongraph

Näytä versiograafi valitsimella /path annetulle polulle.

Luodaksesi kuvan versiograafista jollekin arkistopolulle näyttämättä itse graafi-ikkunaa, anna valitsin /output:polku jossa on kuvatiedoston polku. Tiedoston laajennusosan on oltava jokin seuraavista: .svg, .wmf, .png, .jpg, .bmp ja .gif.

Koska versiograafilla on useita valitsimia, jotka vaikuttavat sen ulkoasuun, voit myös määrittää ne luodessasi kuvatiedostoa. Anna nämä valitsimet muodossa /options:XXXX, missä XXXX on numeerinen arvo. Saat arvon parhaiten selville näyttämällä versiograafin normaaliin tapaan, säätämällä ulkoasun haluamaksesi ja sulkemalla graafin. Tällöin asetettava arvo voidaan lukea rekisteriavaimesta HKCU\Software\TortoiseSVN\RevisionGraphOptions.

:lockAvaa lukitusikkunan valitsimella /path määritellylle hakemistolle, jotta ne voidaan lukita (ja antaa lukitusviesti).
:unlockPoistaa lukituksen valitsimella /path määritellystä tiedostosta, tai, jos valitsin on kansio, kaikista kansion tiedostoista.
:rebuildiconcacheKorjaa Windowsin kuvakemuistin. Käytä tätä vain, jos ikkunoiden kuvakkeet eivät näy oikein. Toiminnon (väistämätön) sivuvaikutus on, että työpöydän kuvakkeet järjestetään uudelleen. Ohittaaksesi viestin, välitä valitsin /noquestion.
:properties

Näyttää ominaisuusikkunan valitsimella /path annetulle polulle.

Versioitujen ominaisuuksien kanssa tämä komento vaatii työkopion.

Versio-ominaisuuksia voidaan katsella/muuttaa, mikäli valitsin /path on paikannin ja valitsin /rev:XXX on annettu.

Avataksesi ominaisuusikkunan suoraan halutulle ominaisuudelle, välitä sen nimi muodossa /property:name.

:sync

Vie/tuo asetukset riippuen siitä, ovatko nykyiset vai viedyt asetukset tuoreempia, tai määritellysti.

Jos polku annetaan valitsimella /path, sitä käytetään asetusten tallettamiseen tai lukemiseen.

Valitsin /askforpath näyttää käyttäjälle avaa/talleta -ikkunan vienti/tuontipolun valitsemiseksi.

Jos kumpaakaan valitsimista /load tai /save ei anneta, TortoiseSVN päättelee valitsimen päiväyksen perusteella. Mikäli viety tiedosto on uudempi kuin nykyiset asetukset, ne noudetaan tiedostosta. Mikäli taas nykyiset asetukset ovat tuoreempia, ne viedään tiedostoon.

Valitsin /load tuo asetukset annetusta asetustiedostosta.

Valitsin /save tallettaa nykyiset asetukset annettuun tiedostoon.

Valitsin /local sisällyttää vietyihin asetuksiin paikalliset asetukset, jotka sisältävät esimerkiksi työasemakohtaisia hakemistopolkuja.


Esimerkkejä (syötä yhdelle riville):

TortoiseProc.exe /command:commit
                 /path:"c:\svn_wc\file1.txt*c:\svn_wc\file2.txt"
                 /logmsg:"test log message" /closeonend:0

TortoiseProc.exe /command:update /path:"c:\svn_wc\" /closeonend:0

TortoiseProc.exe /command:log /path:"c:\svn_wc\file1.txt"
                 /startrev:50 /endrev:60 /closeonend:0