Game Development Reference
In-Depth Information
AAACCCAA.AAB. The contents of these files are clear text, or nearly, so this wacky
naming scheme couldn ' t have been for security reasons. If anyone out there knows
why they did it
m completely stumped.
Each file stores information of how the file changed from revision to revision. Specif-
ically, the information was in
this way, drop me
an email.
I
'
form, so that if you had the most recent
file, you could apply the next most recent reverse delta to re-create the previous revi-
sion. Every revision of a file will create a new SourceSafe file with one of those wacky
names. For those of you paying attention, you
reverse delta
'
ll remember that many of these files
will be pretty small, given that some source changes could be as simple as a single
character change. The amount of network drive space taken up by SourceSafe is
pretty unacceptable in my humble opinion.
There
'
s also a serious problem with speed. Even small projects get to be a few hundred
files in size, and large projects can be tens or even hundreds of thousands of files.
Because SourceSafe stores its data files in the repository directory structure, access
time for opening and closing all these files is quite long, and programmers can wait
forever while simply checking to see if they have the most recent files. Source-Safe
doesn
t support branching (see my discussion on branching a little later) unless you
make a complete copy of the entire tree you are branching. Ludicrous!
Forget attempting to access SourceSafe remotely. Searching thousands of files over a
pokey Internet connection is murder. Don ' t even try it over a high-bandwidth line.
Finally, SourceSafe
'
s file index database can break down, and even the little analyzer
utility will throw up its hands and tell you to start over. I
'
ve finished projects under a
corrupted database before, but it just happened that the corruption was affecting a
previous version of a file that I didn
'
t need. I was lucky.
SourceSafe also has a habit of corrupting itself, making your entire repository a use-
less pile of unfathomable files. This is especially true when you store large binary
assets like sounds, textures, and video.
If I haven
'
'
t convinced you to try something other than SourceSafe, let me just say it:
Don
'
t use it. I
'
ve heard rumors that Microsoft doesn
'
t use it, so why should you?
Subversion and TortoiseSVN
Subversion is a free source repository available at http://subversion.tigris.org. It uses a
command-line interface, which can give some nonprogrammers heartburn when
using it. Luckily, you can also download TortoiseSVN, a GUI that integrates with
Windows Explorer. It is available at http://tortoisesvn.tigris.org. Both are free, easy
to set up and administer, and a great choice for a development team on a budget.
 
 
Search WWH ::




Custom Search