ikiwiki/doc/tips/Ikiwiki_with_git-annex__44_...

67 lines
2.2 KiB
Markdown

[[!meta date="2013-09-26 09:22:26 -0400"]]
# Howto avoid heavy files in ikiwiki git repo
Continuation of discussion at [git-annex forum](http://git-annex.branchable.com/forum/git-annex___38___ikiwiki_experiment/) turns out the git-annex tricks could be avoided.
## Setup on remote server
On the server activate album and underlay plugins in $wiki.setup file
add_plugins:
- album
- underlay
Configure underlay plugin
add_underlays:
- /home/$user/$wiki.underlay
Create underlay directory and init git annex in direct mode
mkdir ~/$wiki.underlay
cd ~/$wiki.underlay;git init;git annex init $srcunderlay; git annex direct
Build ikiwiki for good measure
ikiwiki --setup $wiki.setup --rebuild
## Setup on local laptop
Clone to laptop and initialise annex repo
git clone ssh://$server/$wiki.git ~/$wiki
git clone ssh://$server/$wiki.underlay ~/$wiki.underlay
cd $wiki.underday;git-annex init $wrkunderlay
git remote add $srcunderlay ssh://$server/$wiki.underlay
You now have an annex repo in the local $wiki.underlay called $wrkunderlay and one in the $wiki.underlay directory on the remote server called $srcunderlay.
## Add content locally
Add content to local $wiki directory in this case create $album.mdwn files for every album you have. Then `git add;git commit` files containing at the minimum the following
[[!album ]]
Create directories in the local $wiki.underlay corresponding to the album files in the local $wiki dir. Ie. create a directory named $album for every $album.mdwn file. Copy hi-res jpg files to each directory in the local $wiki.underlay and add + commit.
git annex add .
git commit -m 'jpgs added'
## Push to remote
cd $wrkunderlay; git-annex copy --to $srcunderlay .; git-annex sync
cd $wrkdir;git push
That's it! Ikiwiki should update the website and treat the jpg's as if they were part of the standard file structure.
How to accomplish this using the web interface is another questions. I guess the plugins have to setup and upload to underlaydir somehow.
My guess is that you have to git-annex copy the $wiki.underlay files to $srcunderlay **before** running git push from the local $wiki directory. Haven't tested this yet though.