Maybe, but I can’t imagine it as a subversion. In fact, basically I’d like an app with two buttons: "
Map MODx db on filesystem" and "
Go synch!", that works like summed up here:
1) with a config.ini file I can set db, username, password, charset, etc. to let the app send MySQL queries to a MODx db;
2) when I’m going to work with MODx for some web project, I first start the app; if I have still not, I press the "
Map MODx db on filesystem" button and I let it work for a while: it generates what we call the "
FILESx". Then, in a sqlite db or something similar, the app stores just the names/folders and creation timestamps of the
FILESx: we call it the "
PREx", and it will be used in step 5;
3) I work on the
FILESx, adding/modifying/deleting chunks, TVs, snippets, etc. following some specific rules on the filenames and folders I can create;
4) I want to check my work in action into the web browser: so I press the "Go synch!" button and the app stores in the sqlite db the names/folders and creation/modification timestamps of the new
FILEx: we call it the "
POSTx", and it will be used in step 5;
5) the app makes some queries on the sqlite db to compare the
PREx with the
POSTx, and retrieves the list of files/dirs I have modified/edited/deleted;
6) according to whatever has changed, the app makes the appropriate MySQL queries to the MODx db, in order to synch it with the current
FILEx; if this operation is completed successfully, the app replaces the
PREx with the
POSTx in the sqlite db;
7) I go to the browser window and refresh the page to see the effect of my changes on the
FILEx, which have been reflected on the MODx db and normally (wonderfully) managed by MODx;
8) if I’m not satisfied, I work again on the
FILESx;
9) (go to 4)
Btw:
As for the future, built-in to 0.9.7, you will be able to maintain virtual resources that look like current MODx documents in your tree, but point at physical file resources on the filesystem to make this technique easier to manage and use.
This makes the described app just a "quick hack" in comparison. The virtual resources on filesystem would be SO GREAT!