X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/50e1b43408e85fd2350b9df50e4ceb0c6a495a4f..5b5fb8e877b632802b9131221ee11e2be8c28419:/doc/setup.mdwn diff --git a/doc/setup.mdwn b/doc/setup.mdwn index 8e5653442..7f6ece4c6 100644 --- a/doc/setup.mdwn +++ b/doc/setup.mdwn @@ -119,16 +119,40 @@ This tutorial will walk you through setting up a wiki with ikiwiki. [[toggle id=git text="Git"]] [[toggleable id=git text=""" - REPOSITORY=~/wikirepo - mkdir $REPOSITORY - cd $REPOSITORY - git init-db - cp -a $SRCDIR/* . - git add . - git commit -m "initial import" -a - mv $SRCDIR/.ikiwiki . - rm -rf $SRCDIR - git clone -l -s $REPOSITORY $SRCDIR + When using Git, you probably want to set up two repositories, of which + one should be bare (meaning that it does not have a working tree + checked out). We call the bare repository the "repo" and the other the + "srcdir". There are [other + ways](http://blog.madduck.net/vcs/2007.07.11_publishing-git-repositories) + to do the following, but this might be easiest: + + REPO=~/wiki.git + cd $SRCDIR + mv .ikiwiki .. + git init + echo .ikiwiki > .gitignore + git add . + git commit -m'Initial commit' + # stop git performing fast forwards -- this is to avoid + # overwriting the remote ref and losing other peoples' + # commits from there. + git config receive.denyNonFastForwards true + git config core.bare true + mv .git $REPO + cd .. + rm -r $SRCDIR + git clone -l -s $REPO $SRCDIR + mv .ikiwiki $SRCDIR + + It is **paramount** that you **never** push to the Git repository in + `$SRCDIR` ([this FAQ entry explains + why](http://git.or.cz/gitwiki/GitFaq#head-b6a3d85f677763313159eb39f7dbf4579d4ee28b)). + Instead, if you want to work on the wiki from a remote machine, clone + `$REPO`, using either the `git` transport (if available), or + `ssh`. + + If at any point you commit changes in `$SRCDIR`, make sure to `git + push` them to the `$REPO`. """]] [[toggle id=tla text="TLA"]] @@ -155,7 +179,7 @@ This tutorial will walk you through setting up a wiki with ikiwiki. """]] [[toggle id=monotone text="Monotone"]] - [[toggleable id=montone text=""" + [[toggleable id=monotone text=""" # These instructions are standard instructions to import a directory into monotone # and set it up so that you don't need any passwords to use it REPOSITORY=~/.ikiwiki/mtn.db @@ -188,8 +212,8 @@ This tutorial will walk you through setting up a wiki with ikiwiki. you chose to use. Be sure to set `svnrepo` to $REPOSITORY, if using subversion. Uncomment the block for the wrapper for your revision control system, and configure the wrapper path in that block - appropriately. - + appropriately (for Git, it should be `$REPO/hooks/post-update`). + Once it's all set up, run `ikiwiki --setup ikiwiki.setup` once more. Now you should be able to edit files in $SRCDIR, and use your revision control system to commit them, and the wiki will automatically update.