Re: moving to a git-backed wiki
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- Feb 4, 2011, 17:50 UTC
- Message-ID
- <AANLkTimytxjqoCf-LbxQqSgmAW2+FqmSLN5c_8fSJhLy@mail.gmail.com>
- In-Reply-To
- <20110204061622.GB2455@sigill.intra.peff.net>
On Fri, Feb 4, 2011 at 8:16 AM, Jeff King <peff@peff.net> wrote:
Show 17 quoted lines
> On Thu, Feb 03, 2011 at 10:34:38PM +0200, Felipe Contreras wrote: > >> > Forget about a git-backed wiki for a moment, and imagine a regular old >> > Mediawiki. What are the operations you can perform? You can look at >> > the current or any past version of a page, you can do diffs between >> > versions of pages, and you can create a new version of a page. All >> > through some CGI forms. >> >> Howe about these? > > I've never really used a wiki in any in-depth way, so be gentle if my > utter cluelessness about these features shows through. > >> 1) Support for discussion; since changes can be controversial. > > Doesn't this just happen on special Talk: pages? Couldn't these just be > pages with special names?
Could be.
Show 7 quoted lines
>> 2) Support for article move; so everything is kept organized. > > Isn't that even simpler in a git-backed wiki? You just move the files. > Obviously you would want to update links, too, and presumably the wiki > software helps with that. But that is outside the scope of data storage. > In a git-backed wiki, you would get one atomic commit with the move and > link updating.
Yeah.
Show 5 quoted lines
>> 3) Support for "who is linking here". Also helps reorganization. > > Again, is that a fundamental storage issue? It seems like you could > implement that easily on top of basic storage with a grep (and some > caching if you are going to let people do it a lot via the web).
I doubt that. That's where you need an SQL database, to make it fast.
>> 4) Support for categories. Ditto. > > I have no idea how categories work. Special page naming and/or > directories?
Each page has a tag [[Category::Tips]], and then the the Category::Tips page gets a new link automatically. Again, SQL helps.
>> 5) Support for watchlist, e-mail notifications. So that you are >> up-to-date with the changes. > > Post-receive hook?
Yeah, but you need to store the watchers, and their preferences. Again, SQL.
>> 6) Support for contribution backtracking. So that it's easy to know who's who. > > git log? git blame? :)
Sure, 'git log' would do it... Very inefficiently.
>> 7) Personal wiki pages (with discussion). So you can put information >> about yourself, and general notes. > > Specially named pages for people?
Right.
Show 5 quoted lines
> Obviously I'm just filling in these features off the top of my head. > MediaWiki is a mature system, and I doubt that either ikiwiki or gollum > has nearly the same featureset. But that was never my point. In the bit > you quoted, my point was that a git-interface to a wiki was useful and > feasible. And I stand by that.
It might be possible to implement some functionality of a full blown wiki such as MediaWiki on a git backed wiki, but my point is that it's not there _now_, and more likely would never be.
Show 8 quoted lines
> Even with just the basic functionality of fetch/diff/push, that still > makes it a useful interface into an existing wiki for a large number of > users who just want to do simple stuff (or power users who happen to be > doing simple stuff at the moment). > > I also happen to think you could put all of those features into a > git-backed wiki, and build the web features on _top_ of git access. But > I'm not volunteering to work on that.
Exactly, and nobody is volunteering for that. MediaWiki is the best, it has all the features, and it's already there.
Cheers.
-- Felipe Contreras