Thread (20 messages) flat view 20 messages, 13 authors, 2016-06-15

Re: moving to a git-backed wiki

From: Felipe Contreras <hidden>
Date: 2016-06-15 22:50:30

On Fri, Feb 4, 2011 at 8:16 AM, Jeff King [off-list ref] wrote:
On Thu, Feb 03, 2011 at 10:34:38PM +0200, Felipe Contreras wrote:
quoted
quoted
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.
quoted
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.
quoted
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.
quoted
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.
quoted
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.
quoted
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.
quoted
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.
quoted
7) Personal wiki pages (with discussion). So you can put information
about yourself, and general notes.
Specially named pages for people?
Right.
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.
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help