Symlinks don't work
Using the git backend, a symlink from vcs.page to git.page will be treated as a text file containing just the string "git.page". I guess this is because gitit does a "git show HEAD:vcs.page" and ignores the symlink bit of the git permission/type octets. Google Code Info: Issue #: 112 Author: [email protected] Created On: 2011-03-17T02:32:13.000Z Closed On:
Symlinks currently seems to "kind of work".
Creating a symlink named bar.md pointing to foo.md will be present in the search results, and following its link will display the content of foo.md but with title bar. However, editing foo.md will generate the following error:
Happstack 7.5.1.1
Something went wrong here
Internal server error
Everything has stopped
The error was "UnknownError: filestore parseChanges found unknown changeType ''T'' in: "\n:100644 120000 91b40347 29cc7eac T" on "bar.md""
This is an issue for jgm/filestore, really. Git change types:
A: addition of a file
C: copy of a file into a new one
D: deletion of a file
M: modification of the contents or mode of a file
R: renaming of a file
T: change in the type of the file (regular file, symbolic link or submodule)
U: file is unmerged (you must complete the merge before it can be committed)
X: "unknown" change type (most probably a bug, please report it)
From filestore code:
do next <- case changeType of
'A' -> return $ Added file'
'M' -> return $ Modified file'
'D' -> return $ Deleted file'
_ -> pcErr ("found unknown changeType '" ++
(show changeType) ++
"' in: " ++ (show x) ++
" on " ++ (show y))
So, we're not handling R (rename) or T (file type change) or C (copy).