Barry, VCP format is a textual representation. Version control requires text, so it can make sense of differences. There are a few non-textual files that are created, but the code itself (the part that a version control system cares about) is pure text.

The order of methods in a printout could be an issue. That is an area where your codehelper program would be beneficial.

What does "version control" have to do with "textual representation"? When I save a Project in VCP format, I don't get "text." I get a bunch of files that Windows doesn't even know to open, much less to show me meaningful text.

Those files are straight text (most of them, anyway). Whether the OS recognizes the extension or not is irrelevant. They are text. You can right click them and "open with notepad" and read them.

Quote:

As I understand it, I need some additional program (e.g., Subversion or Git or SmartGit?) to get meaningful textual information when I save something in VCP format.

Version control doesn't modify the files in any way, whether to "produce meaningful text" or in any other fashion. It saves them and tracks all the changes between one version of a file and the next. This requires the code to be plain text. When you save in VCP format, the IDE explodes the project into many smaller files so that the version control can be more efficient. A small change will likely affect just one of those files, so the version control system only has to store the one changed file, not the entire project.

Version control is a storage and comparison system that stores every version of the project and can show you the exact changes that occurred to the code between 2 versions. It also lets you make a note of why each change was made. The VC system can also reproduce any version of the project on demand. If you want to go back to last Tuesday's version, no problem.

As an implementation detail, version control saves only the changes, not the entire files, so the required storage is much smaller than if you just kept a copy of each version, say by changing the name from ch109 to ch110.