git-wiki

git-wiki is a wiki that relies on git to keep pages' history and Sinatra to serve them.

Features of this fork (by geekQ)

Support for images

You can add images to /img folder of your git repository. Subfolders are also supported. At least gif, png and jpg supported - content type is set automatically by Sinatra. You can reference the images then from your wiki pages like ![My picture](/img/2009/my_picture.jpg)

No web interface at this time - use git commit.

Custom h1 header

If your wiki page contains a markdown h1 header, then this one is used on the page.

If not, then h1 is created out of the file name (as in original git-wiki).

Plans

  • support for attachments
  • nicer CSS
  • support for deeper Wiki page folder structure
  • do not rely on wiki words
  • support for special programmed pages - via haml or liquid template engine

Original README by Simon Rozet

I wrote git-wiki as a quick and dirty hack, mostly to play with Sinatra. It turned out that Sinatra is an awesome little web framework and that this hack isn't as useless as I first though since I now use it daily.

However, it is definitely not feature rich and will probably never be because I mostly use it as a web frontend for git, ls and vim.

If you want history, search, etc. you should look at other people's forks.

Install

The following gems are required to run git-wiki:

Run with mkdir ~/wiki && (cd ~/wiki && git init) && ./run.ru -sthin -p4567 and point your browser at http://0.0.0.0:4567/. Enjoy!

See also

Quotes

[...] the first wiki engine I'd consider worth using for my own projects.

Steve Dekorte

Oh, it looks like Git Wiki may be the starting point for what I need...

Tom Morris on "How to build the perfect wiki"

What makes git-wiki so cool is because it is backed by a git store, you can clone your wiki just like you could any other git repository. I’ve always wanted a wiki that I could a.) pull offline when I didn’t have access to the Internets and b.) edit (perhaps in bulk) in my favorite text editor. git-wiki allows both.

Cloning your wiki

Numerous people have written diff and merge systems for wikis; TWiki even uses RCS. If they used git instead, the repository would be tiny, and you could make a personal copy of the entire wiki to take on the plane with you, then sync your changes back when you're done.

Git is the next Unix

MIT license

Copyright (c) 2009 Vladimir Dobriakov, vladimir.dobriakov@innoq.com

Copyright (c) Simon Rozet

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.