Obsah
Pretože všetky príkazy pre TortoiseSVN sú ovládané prostredníctvom parametrov príkazového riadku, môžete ich automatizovať dávkovými skriptmi alebo spustiť konkrétne príkazy a dialógy z iných programov (napr. Obľúbeného textového editora).
Pamätajte, že TortoiseSVN je klient s grafickým užívateľským rozhraním a tento sprievodca automatizáciou vám ukáže, ako vytvoriť dialógové okná TortoiseSVN, ktoré zhromažďujú vstupy užívateľov. Ak chcete napísať skript, ktorý nevyžaduje žiadny vstup, mali by ste namiesto toho použiť oficiálneho klienta príkazového riadku Subversion.
Program TortoiseSVN GUI sa nazýva TortoiseProc.exe
. Všetky príkazy sú určené parametrom /command:abcd>
kde abcd
je požadovaný názov príkazu. Väčšina z týchto príkazov vyžaduje aspoň jeden argument cesty, ktorý je uvedený spolu s /path:"nejaká\cesta"
. V nasledujúcej tabuľke príkaz odkazuje na parameter /command:abcd
a cesta sa vzťahuje na parameter /path:"nejaká\cesta"
.
Existuje špeciálny príkaz, ktorý nevyžaduje parameter /command:abcd
, ale ak na príkazovom riadku nie je nič uvedené, spustí sa namiesto toho monitor projektu. Ak je zadané /tray
, monitor projektu sa spustí na pozadí a iba pridá svoju ikonu na systémovú lištu.
Pretože niektoré z príkazov môžu obsahovať zoznam cieľových ciest (napr. odovzdanie niekoľkých konkrétnych súborov), parameter /path
môže mať niekoľko ciest, oddelených znakom *
.
Môžete tiež určiť súbor, ktorý obsahuje zoznam ciest oddelených novými riadkami. Súbor musí byť vo formáte UTF-16 bez BOM (Bill Of Materials). Ak odovzdáte takýto súbor, použite /pathfile
namiesto /path
. Ak chcete, aby TortoiseProc odstránil tento súbor po dokončení príkazu, môžete zadať parameter /deletepathfile
. Ak neprejde /deletepathfile>
, musíte súbor odstrániť sami, inak súbor zostane pozadu.
Dialógové okno priebehu, ktoré sa používa pre odovzdanie, aktualizácie a mnoho ďalších príkazov, zvyčajne zostáva otvorené po dokončení príkazu, kým užívateľ nestlačí tlačidlo
. Toto je možné zmeniť zaškrtnutím príslušnej možnosti v dialógovom okne nastavení. Použitím tohto nastavenia sa však dialógové okno priebehu zavrie bez ohľadu na to, či príkaz spustíte z dávkového súboru alebo z kontextovej ponuky TortoiseSVN.Ak chcete určiť iné umiestnenie konfiguračného súboru, použite parameter /configdir:"cesta\na\priečinok\konfigurácie"
. Týmto prepíšete predvolenú cestu vrátane všetkých nastavení registra.
Ak chcete automaticky zavrieť dialógové okno priebehu na konci príkazu bez použitia trvalého nastavenia, môžete prejsť na parameter /closeonend
.
/closeonend:0
nezatvárať dialógové okno automaticky
/closeonend:1
zavrieť dialógové okno automaticky ak nenastali chyby
/closeonend:2
zavrieť dialógové okno automaticky ak nenastali chyby, alebo konflikty
/closeonend:3
zavrieť dialógové okno automaticky ak nenastali chyby, konflikty, alebo zlúčenia
Ak chcete zavrieť dialógové okno priebehu pre miestne operácie, ak nedošlo k žiadnym chybám alebo konfliktom, odošlite parameter /closeforlocal
.
V nasledujúcej tabuľke je uvedený zoznam všetkých príkazov, ku ktorým je možné získať prístup použitím príkazového riadku TortoiseProc.exe. Ako je opísané vyššie, mali by sa používať vo forme /command:abcd
. V tabuľke je predpona /command
vynechaná kvôli šetreniu miesta.
Tabuľka D.1. Zoznam dostupných príkazov a možností
Príkaz | Popis |
---|---|
:about | Zobrazuje dialógové okno s informáciami. Toto sa tiež zobrazí, ak nie je zadaný žiadny príkaz. |
:log |
Otvorí dialógové okno záznamu. Voľba
An svn date revision can be in one of the following formats:
|
:checkout |
Otvára dialógové okno overenia. Parameter Ak zadáte |
:import | Otvorí dialógové okno importu. Parameter /path určuje priečinok s údajmi, ktoré sa majú importovať. Môžete tiež určiť prepínač /logmsg na predanie preddefinovanej správy záznamu dialógovému oknu importu. Alebo ak nechcete odovzdať správu záznamu na príkazovom riadku, použite /logmsgfile:path , kde path ukazuje na súbor, ktorý obsahuje správu. |
:update | Aktualizuje pracovnú kópiu v /path na HEAD. Ak je zadaná možnosť /rev , potom sa zobrazí dialógové okno so žiadosťou, aby užívateľ vybral revíziu, na ktorú by aktualizácia mala ísť. Aby ste sa vyhli dialógu, zadajte číslo revízie /rev:1234 . Ďalšie možnosti sú /nonrecursive , /ignoreexternals a /includeexternals . Parameter /stickydepth označuje, že zadaná hĺbka by mala byť lepivá, čím sa vytvorí roztrúsené overenie. Parameter /skipprechecks je možné nastaviť na preskočenie všetkých kontrol vykonaných pred aktualizáciou. Ak je to určené, potom tlačidlo Zobraziť záznam je zakázané a po aktualizácii je zakázané aj kontextová ponuka zobrazenie odlišností. |
:commit | Otvorí dialógové okno odovzdania. Parameter /path určuje cieľový priečinok alebo zoznam súborov, ktoré sa majú odovzdať. Môžete tiež určiť prepínač /logmsg na odoslanie preddefinovanej správy záznamu dialógovému oknu odovzdania. Alebo ak nechcete odovzdať správu záznamu na príkazovom riadku, použite /logmsgfile:path , kde path ukazuje na súbor, ktorý obsahuje správu. Na vyplnenie poľa pre ID chyby (v prípade, že ste správne nastavili integráciu so sledovačmi chýb), môžete to urobiť použitím /bugid:"ID chyby tu" . |
:add | Pridá súbory do /path na správu verzií. |
:revert | Vráti miestne úpravy pracovnej kópie. Parameter /path hovorí, ktoré položky sa majú vrátiť. |
:cleanup | Vyčistí prerušené alebo zrušené operácie a odomkne pracovnú kópiu v /path . Musíte tiež prejsť /cleanup pre vykonanie aktuálneho vyčistenia. Použite /noui na zabránenie vyskočenia dialógového okna s výsledkami (buď o dokončení čistenia, alebo o zobrazení chybovej správy). Parameter /noprogressui tiež zakáže dialógové okno priebehu. Parameter /nodlg zakáže zobrazovanie dialógového okna čistenia, kde si užívateľ môže zvoliť, čo by sa malo pri čistení urobiť. Dostupné akcie je možné určiť možnosťou /cleanup na vyčistenie stavu, /breaklocks na prelomenie všetkých zámkov, parameter /revert na vrátenie neodovzdaných zmien, /delunversioned , /delignored , /refreshshell , /externals , /fixtimestamps a /vacuum . |
:resolve | Označí konfliktný súbor uvedený v /path ako vyriešený. Ak je daný parameter /noquestion , potom sa vyriešenie uskutoční bez toho, aby ste sa užívateľa najskôr opýtali, či by to skutočne malo urobiť. |
:repocreate | Vytvorí úložisko v /path |
:switch | Otvorí dialógové okno prepínača. /path určuje cieľový priečinok a /url adresu URL, na ktorú sa chcete prepnúť. |
:export | Exportuje pracovnú kópiu do priečinka /path do iného priečinka. Ak /path odkazuje na bezverziový priečinok, v dialógovom okne sa zobrazí výzva na zadanie adresy URL na export do priečinka v /path . Ak zadáte kľúč /blockpathadjustments , automatické úpravy cesty exportu sú blokované. |
:dropexport | Exportuje pracovnú kópiu v /path do priečinka určeného v /droptarget . Tento export nepoužíva dialógové okno exportu, ale je vykonávaný priamo. Možnosť /overwrite určuje, že existujúce súbory sa prepíšu bez potvrdenia používateľom a táto možnosť /autorename určuje, že ak súbory už existujú, exportované súbory sa automaticky premenujú, aby sa neprepísali. Možnosť /extended môže určiť buď localchanges pre export iba súborov, ktoré sa zmenili lokálne, alebo unversioned pre export aj všetkých bezverziových položiek. |
:dropvendor | Skopíruje rekurzívne priečinok v /path do priečinka uvedeného v /droptarget . Nové súbory sa pridávajú automaticky a chýbajúce súbory sa odstránia v cieľovej pracovnej kópii, čím sa v podstate zabezpečí, že zdroj a cieľ budú úplne rovnaké. Určením /noui sa preskočí potvrdzovací dialóg a /noprogressui zakáže aj zobrazovanie dialógového okna priebehu. |
:merge | Otvorí dialógové okno zlúčenia. Parameter /path určuje cieľový priečinok. Pre zlúčenie rozsahu revízií sú k dispozícii nasledujúce možnosti: /fromurl:URL , /revrange:string . Pre zlúčenie dvoch stromov úložiska sú k dispozícii nasledujúce možnosti: /fromurl:URL , /tourl:URL , /fromrev:xxx a /torev:xxx . |
:mergeall | Otvorí dialógové okno zlúčiť všetko. /path určuje cieľový priečinok. |
:copy | Vyvolá dialógové okno vetvy/príznaku. /path je pracovná kópia, z ktorej má byť vytvorená vetva/príznak a /url je cieľová adresa URL. Ak adresy URL začínajú znakom ^ predpokladá sa, že sú relatívne ku koreňu úložiska. Pre zaškrtnutie možnosti Prepnúť pracovnú kópiu na novú vetvu/príznak môžete pridať prepínač /switchaftercopy . Pre zaškrtnutie možnosti Vytvoriť dočasné priečinky pridajte prepínač /makeparents . Môžete tiež určiť prepínač /logmsg na odoslanie preddefinovanej správy záznamu do dialógového okna vetvy/príznaku. Alebo ak nechcete odovzdať správu záznamu na príkazovom riadku, použite /logmsgfile:path , kde path ukazuje na súbor, ktorý obsahuje správu. |
:settings | Otvorí dialógové okno nastavenia. |
:remove | Odstráni súbory v priečinku /path zo správy verzií. |
:rename | Premenuje súbor v /path . Nový názov súboru sa zobrazí s dialógovým oknom. Ak sa chcete vyhnúť otázkam o premenovaní podobných súborov v jednom kroku, pridajte /noquestion . |
:diff | Spustí externý program porovnania odlišností uvedený v nastaveniach TortoiseSVN. Parameter /path určuje prvý súbor. Ak je nastavená možnosť /path2 , potom sa program porovnania odlišností spustí s týmito dvoma súbormi. Ak je parameter /path2 vynechaný, potom sa porovnanie vykoná medzi súborom v /path a jeho bázou (BASE). Ak má zadaný súbor aj úpravy vlastností, spustí sa pre každú upravenú vlastnosť externý nástroj porovnania odlišností. Ak tomu chcete zabrániť, pridajte voľbu /ignoreprops . Ak chcete explicitne nastaviť čísla revízií, použite /startrev:xxx a /endrev:xxx a pre voliteľnú zavesenú revíziu použite /pegrevision:xxx . Ak je nastavený parameter /blame a /path2 nie je, potom sa porovnanie odlišností vykoná tak, že sa najskôr vyvodí zodpovednosť súborov s danými revíziami. Parameter /line:xxx určuje riadok, na ktorý sa má preskočiť, keď je zobrazený rozdiel. |
:shelve | Odloží na policu s určenými cestami do novej police. Možnosť /shelfname:name určuje názov police. Voliteľnú správu záznamu je možné určiť pomocou /logmsg:message . Ak je pridaná možnosť /checkpoint , úpravy súborov sa zachovajú. |
:unshelve | Aplikuje policu s názvom /shelfname:name do cesty pracovnej kópie. V predvolenom nastavení je použitá posledná verzia police, ale môžete určiť verziu parametrom /version:X . |
:showcompare |
V závislosti na adresách URL a revíziách, ktoré sa majú porovnať, sa buď zobrazuje zjednotený rozdiel (ak je nastavená možnosť Možnosti Ak má zadaná adresa URL tiež úpravy vlastností, spustí sa pre každú upravenú vlastnosť aj externý nástroj porovnania odlišností. Ak tomu chcete zabrániť, odovzdajte voľbu Ak sa požaduje zjednotené porovnanie odlišností, voliteľne môže byť zadaná možnosť |
:conflicteditor | Spustí editor konfliktov zadaný v nastaveniach TortoiseSVN so korigovanými súbormi pre konfliktný súbor v /path . |
:relocate | Otvorí dialóg premiestnenia. /path udáva cestu pracovnej kópie na premiestnenie. |
:help | Otvorí súbor pomocníka. |
:repostatus | Otvára dialógové okno kontroly zmien. Parameter /path určuje priečinok pracovnej kópie. Ak je zadaný /remote , dialógové okno kontaktuje úložisko okamžite po štarte, akoby užívateľ klikol na tlačidlo Skontrolovať úložisko. |
:repobrowser |
Spustí dialógové okno prehliadača úložiska, ktoré ukazuje na adresu URL pracovnej kópie uvedenej v možnosti Ďalšia možnosť Ak Ak je zadaný |
:ignore | Pridá všetky ciele do /path do zoznamu ignorovaných, t. j. do vlastnosti svn:ignore týchto súborov. |
:blame |
Otvorí dialóg o vyvodení zodpovednosti pre súbor určený v Ak sú nastavené možnosti Ak je nastavená možnosť Podporované sú aj možnosti |
:cat | Uloží súbor z adresy URL alebo cesty pracovnej kópie uvedenej v /path na miesto uvedené v /savepath:path . Revízia je uvedená v /revision:xxx . To možno použiť na získanie súboru s konkrétnou revíziou. |
:createpatch | Vytvorí súbor opravnej záplaty pre cestu uvedenú v /path . Ak chcete preskočiť dialógové okno Uložiť ako, môžete pridať /savepath:path na určenieť cesty, kam sa má súbor opravnej záplaty priamo uložiť. Ak chcete zabrániť spusteniu zobrazenia súboru opravnej záplaty v prehliadači zjednotených odlišností, pridajte /noview . Ak sa požadujú zjednotené porovnanie odlišností, voliteľne môže byť zadaná možnosť prettyprint , ktorá zobrazí vlastnosti merge-info v užívateľsky čitateľnejšom formáte. |
:revisiongraph |
Zobrazí graf revízie pre cestu uvedenú v Ak chcete vytvoriť súbor obrázka grafu revízie pre konkrétnu cestu, ale bez zobrazenia okna grafu, musíte pridať Pretože má graf revízií veľa možností, ktoré ovplyvňujú jeho zobrazovanie, môžete tiež nastaviť možnosti, ktoré sa majú použiť pri vytváraní výstupného obrazového súboru. Pridajte tieto možnosti pomocou |
:lock | Zamkne súbor alebo všetky súbory v priečinku uvedenom v /path . Zobrazí sa dialógové okno „uzamknutia“, aby mohol užívateľ zadať komentár k zámku. |
:unlock | Odomkne súbor alebo všetky súbory v priečinku uvedenom v priečinku /path . |
:rebuildiconcache | Znovu vytvorí zásobník ikon systému Windows. Toto použite iba v prípade, že sú ikony systému Windows poškodené. Vedľajším efektom toho (čomu sa nedá vyhnúť) je, že sú prehádzané ikony na pracovnej ploche. Ak chcete potlačiť okno so správou, pridajte /noquestion . |
:properties |
Zobrazí dialógové okno vlastností pre cestu uvedenú v Pre prácu s verziovými vlastnosťami vyžaduje tento príkaz pracovnú kópiu. Vlastnosti revízie je možné zobraziť/zmeniť, ak Ak chcete otvoriť dialógové okno vlastností priamo pre konkrétnu vlastnosť, zadajte názov vlastnosti ako |
:sync |
Exportuje/importuje nastavenia, buď podľa toho, či sú aktuálne nastavenia alebo exportované nastavenia novšie, alebo podľa zadania. Ak je pridaná cesta v Parameter Ak nie je určený ani jeden z parametrov Ak je určený parameter Ak je určený parameter Parameter |
Príklady (ktoré je potrebné zadať do jedného riadku):
TortoiseProc.exe/command:commit /path:"c:\svn_wc\file1.txt*c:\svn_wc\file2.txt" /logmsg:"správa protokolu testu" /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