Prpipnutý skript je program, ktorý sa spúšťa nejakou udalosťou v úložisku ako je vytvorenie novej revízie alebo úpravy neverziovaných vlastností. Každé pripnutie nesie dostatok informácii, aby vedelo o akú udalosť sa jedná, aký je cieľ operácie a užívateľské meno, ktoré súšťa udalosť. V závislosti od výstupu pripnutia alebo návratovej hodnoty, pripnutý program môže pokračovať vo vykonávaní alebo pozastaviť sa. Ďalšie informácie najdete na Hook Scripts v Subversion knihe pre detailné informácie o pripnutiach, ktoré sa dajú vykonať.
Tieto pripnuté skripty sú vykonávané serverom, na ktorom sa nachádza úložisko. TortoiseSVN dovoľuje tiež prispôsobovať skripty na stranie užívateľa, ktoré sú vykonávana lokálne po nejakej udalosti. Pre viac informácii pozrite “Klientské (pripnuté) skripty”.
Niektoré pripnuté skripty môžete nájsť v hooks adresári úložiska. Tieto ukážkové skripty sú použiteľné pre Unix/Linux servre, ale musia byť upravené, ak používate ich na Windows server. Pripnutie môže byť dávkový súbor alebo spustiteľný súbor. V ukážke dole je dávkový súbor, ktorý môže byť použitý ako pripnutie.
rem Only allow log messages to be changed. if "%4" == "svn:log" exit 0 echo Property '%4' cannot be changed >&2 exit 1
Všimnite si, že ak niečo je odoslané na výstup, tak je to zahodené. Ak chcete, aby sa správa objavila pri zamietnutí odovzdávania dialógu musíte to poslat na stderr. V dávkovom súubore toto môžete spraviť pomocou >&2
Ak pripnutý skript neprijme vaše odovzdanie, potom je toto rozhodnutie konečné, Ale môžete vytvoriť naliehajúci mechanizmus do samotného skriptu použitím techniky špeciálneho výrazu. Ak skrpt odmietne operáciu, najskôr prehľadá denníkové správy, či sa tam nenachádzajú speciálne výrazy, buď fixné výrazy alebo súbor s predponou. Ak nájde špeciálny výraz, potom dovolí pokračovať v odovzdávaní. Ak výraz nie je najdutý, potom zablokuje odovzdávanie so správou napríklad “Nepovedali ste čarovné slovíčko” :-)