From b1e3da4f43befe2c8c0ce0419a47cd3c262e8391 Mon Sep 17 00:00:00 2001 From: joey Date: Mon, 22 Oct 2007 01:45:55 +0000 Subject: [PATCH] new tip, describing essentially how I'm using ikiwiki and git on my laptop to create branches of wikis --- doc/tips/laptop_wiki_with_git.mdwn | 48 ++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 doc/tips/laptop_wiki_with_git.mdwn diff --git a/doc/tips/laptop_wiki_with_git.mdwn b/doc/tips/laptop_wiki_with_git.mdwn new file mode 100644 index 000000000..0ab098128 --- /dev/null +++ b/doc/tips/laptop_wiki_with_git.mdwn @@ -0,0 +1,48 @@ +Using ikiwiki with the [[git]] backend, some interesting things can be done +with creating mirrors (or, really, branches) of a wiki. In this tip, I'll +assume your wiki is located on a server, and you want to take a copy with +you on your laptop. + +With the configuration described here, you can commit local changes to the +version on the laptop, perhaps while offline. You can browse and edit the +wiki using a local web server. When you're ready, you can manually push the +changes to the main wiki on the server. + +First, set up the wiki on the server, if it isn't already. Nothing special +needs to be done here, just follow the regular instructions in [[setup]] +for setting up ikiwiki with git. + +Next, git clone the source from the server to the laptop. + +Now, set up a web server on your laptop, if it doesn't already have one. + +Now you need to write a setup file for ikiwiki on the laptop. Mostly this +is standard, but a few special settings are needed: + +* Configure a cgi wrapper as usual, but configure the git wrapper to + be written to the `post-commit` hook of the git clone. + +* By default, ikiwiki pulls and pushes from `origin`. This shouldn't be + done on the laptop, because the origin may not be accessible (when the + laptop is offline). Also, commits made on the laptop should stay there, + until manually pushed, so that the laptop can serve as a staging area. + + Make sure you have ikiwiki 2.11 or better installed, and set: + + gitorigin_branch => "", + +* You can optionally enable to the [[plugins/mirrorlist]] plugin, + and configure it so that each page links to the corresponding page on the + server. + +Now just run `ikiwiki -setup wiki.setup -getctime` and you should be +good to go. (You only need the slow `-getctime` option the first time you +run setup.) + +Use standard git commands to handle pulling from and pushing to the server. + +Note: Currently, after pulling changes, you will need to manually update +the wiki, with a command such as `ikiwiki -setup wiki.setup -refresh`. This +is because git 1.5.4 doesn't have a hook that is run locally after pulling +changes. Newer versions of git will have a `post-merge` hook that should +work for this purpose. -- 2.39.2