X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/d5566303d6b416fb4b0f49a4a7eae2c81bddf17e..041f10bf3e6fe9d45e921f60a0d62bdc931cbe99:/doc/post-commit.mdwn diff --git a/doc/post-commit.mdwn b/doc/post-commit.mdwn index 6e768ce24..467fc6bd5 100644 --- a/doc/post-commit.mdwn +++ b/doc/post-commit.mdwn @@ -1,23 +1,25 @@ +A post-commit hook is run every time you commit a change to your subversion repository. To make the wiki be updated each time a commit is made, it can be run from (or as) a post-commit hook. + The best way to run ikiwiki in a [[Subversion]] post-commit hook is using -a wrapper, which can be generated using `ikiwiki --gen-wrapper`. +a wrapper, which can be generated using `ikiwiki --wrapper`. First, set up the subversion checkout that ikiwiki will update and compile into your wiki at each subversion commit. Run ikiwiki a few times by hand -to get a feel for it. Now, generate the wrapper by adding "--gen-wrapper" +to get a feel for it. Now, generate the wrapper by adding "--wrapper" to whatever command line you've been using to run ikiwiki. For example: ~/wiki-checkout> ikiwiki . ~/public_html/wiki - ~/wiki-checkout> ikiwiki . ~/public_html/wiki --gen-wrapper + ~/wiki-checkout> ikiwiki . ~/public_html/wiki --wrapper successfully generated ikiwiki-wrap The generated wrapper is a C program that is designed to safely be made suid if necessary. It's hardcoded to run ikiwiki with the settings -specified when you ran --gen-wrapper, and can only be used to update and +specified when you ran --wrapper, and can only be used to update and compile that one checkout into the specified html directory. Now, put the wrapper somewhere convenient, and create a post-commit hook script in your subversion repository for the wiki. All the post-commit -hook has to do is run ikiwiki-wrap (with no parameters). +hook has to do is run the wrapper (with no parameters). Depending on your Subversion setup, the post-commit hook might end up getting called by users who have write access to subversion, but not to