After several discussions (mostly Thrawn and me), it seems desireable that all TechDemo-Dev team members are able to edit the TechDemo.cmap file. Ideally, everybody should be able to edit the map independently and at all times.
Doing so however is non-trivial, because the person who wants to edit the map must first get the latest version, edit it, hope that nobody else edited it at the same time, and then distribute to all others.
These issues involve technical problems for everybody (e.g. website up- and downloads of the current file, or email distribution etc.), but note that the biggest problem is in fact the communication problem.
Subversion is an excellent tool that solves these very problems.
Subversion
Why it is worthwhile to learn Subversion:
Those who are not (yet) familiar with Subversion might complain that they have to learn yet another, seemingly "complicated" tool.
However, note that you spend your time for learning a professional-grade version management software. Not only does it solve the problems that are involved with sharing the TechDemo.cmap, it also does so far more efficiently than any other hand-made solution we might come up with. Subversion even helps with quality communication among us, by forcing everybody to write log messages for the changes we make, and optionally takes log messages when somebody locks a file for editing, and many other great features.
Details about Subversion:
The Subversion website is at http://subversion.tigris.org/
The Subversion book is at http://svnbook.red-bean.com/
The latest edition of the book (contains chapter about Locking) is at http://svnbook.red-bean.com/nightly/en/index.html
Here is what I'd recommend for learning Subversion:
- Read the chapters 1, 2 and 3 of the book. They are well written and easy to understand.
- Read and understand section "Locking" of chapter 7. Locking is required because we have to consider cmap files as not being mergeable. Although cmap files are Ascii text files like C++ source code files, for versioning purposes we have to consider them as non-mergeable files such as jpegs, pngs, mp3s, etc. (This is because they are machine-generated by CaWE, rather than hand-edited by humans.)
- Get and install the command-line client "svn" of Subversion. It's easy to use, and helps you to understand what's going on. All examples in the book refer to the command line client anyway.
- Please ask. Whenever something is unclear, please ask.
Accessing the Subversion server:
The URL to the server is: ca3dedev.dyndns.org
The repository (project) name is: Projects_public
Server availability: workdays during local daylight hours, that is, about from 7:00am to 7:45pm (7:00 to 19:45) local German time.
Username and password: You get them from me either via Private Forum Message or per Email.
Thus, according to chapter 3 of the SubVersion book, you can simply check out with the command
svn checkout svn://ca3dedev.dyndns.org/Projects_public your/desired/path
where "svn:" specifies that you access the svn server with subversions own protocol (as opposed to http, this is how I set it up), then comes the server URL plus the directory of the repository, and "your/desired/path" is the location on your harddrive whereever you want to check it out.
You may also omit the "your/desired/path" part, then svn will create a new folder with name "Projects_public" and check everything out into that folder.
Questions
Please post! I'll be happy to help you.