I have been using these forums for around 6 years now and normally can find everything I need right here. However on this occasion I have to ask a question rather than relying on previous requests.
For 2 years now my company has been working with a test tool called VersaTest by a company called Ascert (previously SoftSell) which uses CSV files as the basis for all controls including tool configuration and scripts and autonomous processing.
The files have to available to all users in a read/write state and available to the Simulator in read/write format is a predefined directory structure.
We are now looking at implementing the usage of VT across all our test environments and as all users must have access to all directories in order for it to work, we need to be able to monitor, track and revert any changes in the event of critical failure.
We have tested Subversion (TortoiseSVN 1.6.6) which accurately records and reverts any changes between commits, however the VT needs to use the working copy and any number of users needs to able to amend this working copy at any time, therefore the repository will only be necessarily be used as a VC tool. The main problem with this is that the person that commits the changes will only ever be the person recognised as making the changes. Also the commits have to be manually actioned and do not work in real time.
I have also tried ShareAlarmPro by NSAuditor. Whilst this application is very good at reporting who accessed what files/folders, at what time and also recording creations/deletes and renames within a directory (as well as the person who did it), this tool does not record what actually changed within a file. It also does not allow exceptions to monitoring such as by string (*log*, *.log, *.temp, etc), Versatest produces a large amount of logs which are vital for transaction auditing but do not need to be included in any monitoring.
Ideally I would like a singular tool that is the collaboration of both. Something that records who accesses a folder/file and when a folder/file is amended, records the changes made. The ability to recover is not necessarily a "must have" as undoing the changes made will suffice but will certainly be in my "nice to have" pile.
Sounds like you were on the right track with subversion. Probably any Configuration Management tool should allow users to check out working files from their desktop into a predefined directory structure and them check them back in when/if their changes are needed to be checked in.
With CM it will track changes, and note by who. As well as allow you to roll back changes to a previous version.