Source Control

Charlie asks what people do for source control?

A very good question, and one I would like to know more about too.

Me, I don’t really bother with formal source control for Excel based projects, mainly because its a binary format. If I do an Excel/VBA job the VBA part will probably secondary to the worksheet stuff, and that doesn’t go well into any source control that I know of. I tend to keep multiple copies of the workbook so I can go back to any point. I have tried using SourceSafe with VBA, but it seems a bit pointless to control the code, but ignore the worksheet stuff.

I do use Visual SourceSafe for pure VB6 and .net work, I keep meaning to try Subversion, but havent yet.

What do you do?

Anyone got top tips for managing and versioning the spreadsheet content?



4 Responses to “Source Control”

  1. Fyodor Sheremetyev Says:

    Subversion works well even with binary files like Excel worksheet. If you want to try using it from Visual Studio go have look at VisualSVN. It provides a very simple way to add your solution to Subversion.

  2. Marcus Says:

    I may be deemed lazy here: I’ve tried Visual Source Safe (yeech), another corporate source code control app (who’s acronym name escapes me) and I’ve tried to get myself in SVN (with Tortoise). No luck.

    At the beginning of each day, I highlight the project I’m about to work on, and zip it (remembering to tick the box to save full path info). Each zip is named “project”. For each project I have a ‘bak’ folder. If (when, really) I ever stuff anything up I can go back incrementally to the last unadulterated version.

    While it’s a matter of habit, I’m sure the same could be said of “proper” version control. However, I feel comfortable with this method and can easily email, backup or recreate any ‘version’ – it’s been a while since hard disk space was an issue.

    P. S. I also back up on to DVD as often as I can remember.

    Cheers – Marcus
    21:12 AEST, Now: 13°C Min: 9°C, Gale force wind warnings

  3. Rob Bruce Says:

    The main points of source code control are not really back up and recovery (they’re easy to implement with a bit of discipline and some simple automation), but change consolidation amongst teams of developers and change auditing.

    I’m guessing that the former is of relatively little concern to us as we all seem to be lone developers working on single-developer projects. The latter, however is the killer: With purely source code control, all manner of systems will give us basic code comparison and audit trails and if this is augmented by appropriate code commentary, they all should work well, though I avoid SourceSafe because it has a history of inexplicable database corruptions in my experience.

    For the spreadsheet content, there’s nothing, is there? Combined with a tool to automate the (let’s admit, often tedious) documentation of spreadsheet content, such a tool would go a long way towards making our efforts more professionally maintainable and transparent.

  4. Ross Says:

    Intresting I was read a post over at DDOE about SVN (with Tortoise) and RB code cleaner – look intresting, but i don’t think i could be asked myself. I do the same this as Marcus – Zip them up – often don’t even bother doing that just bang them in an “old” folder with a date.

    Also like rob says – it about change management, bug fixing etc. This would be hard with Excel VBA.

    As for the wsk, it’s got so many dimentions it would be hard to control – maybe you could stack each worksheet verson into an xml file or somthing?

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: