MDN/Projects/Development/Git Backend

From MozillaWiki
Jump to navigation Jump to search

Project statement

Kuma implements a crude version control (VC) system for wiki pages atop a MySQL database. This system is cumbersome and full of reinventions of things done better elsewhere.

Git is a distributed version control system that is popular, well-supported, and does most of the things Kuma tries to do in much more elegant ways - at least, with respect to VC.

So, it might be interesting to look into swapping out Kuma's use of MySQL for version control and replacing it with a Git-based backend.

Other benefits could include:

  • mirroring the entire public document corpus on GitHub
  • allowing the MDN document corpus to be manipulated by non-MDN tools and scripts
  • accepting Pull Requests against the corpus, allowing for reviewable changes that span multiple documents

Inspirations

Using git as the data backend for a wiki is not a terribly original idea.

Implementation resources

TBD

Next Steps

  • Experimental research into using git as a data backend in a Django site
  • Migration scripts to convert from documents in MySQL to a git repos