On Fri, Feb 4, 2011 at 8:16 AM, Jeff King <peff@xxxxxxxx> wrote: > 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. >> 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. >> 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. > 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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html