Thursday, May 31, 2007

My first, "Getting the Most from Version Control" Presentation

Introduction For those of you who aren’t aware I gave a presentation at the Day of .NET in Ann Arbor MI. My Presentation was titled “Getting the most from Version Control.” I think it went pretty well. There was a wonderful turn out, and a lot of great questions and feedback. I want to thank all of you who attended. I hope you enjoyed my talk and you got something out of it. Please attach your comments about my presentation to this post. I would love to hear from you. Let me know what you thought, and how I could make the presentation better. My presentation materials as available on the Day of .NET website. If you want to try to demo’s out for yourself place start with “Demo\Script.doc” What did I learn from this experience? Confusing sections of my Presentation that I should make clearer.
  • Add coder’s (Mike, and Sally) involvement to the “Brief history of time” slide
  • Update the abstract to mention a focus on subversion
Ideas for content to be included in the presentation.
  • Why programmers should group their changes into small logical changesets.
  • How a good version control system can change coding style and make code less bloated.
  • Stress the value of commenting commits
During my presentation, I answered a few questions. What is the name of the tools you used in your demo? Subversion (SVN) is the version control system I used to create and host the repository. AnkhSVN is the name of the Visual Studio Add-on. This little open source tool has come a long way, it still has a couple bugs here and there but I’m finding it to be more and more reliable. However I like to keep TortoiseSVN installed as a backup. TortoiseSVN (TSVN) was the windows explorer plug-in is used to perform Adam’s administrative tasks. TortoiseSVN is open source, and has helped me fix any I’ve had with my working copies. AltDesk is the multiple desktop software I used to switch between the screens of Mike, Sally, and Adam. I use AltDesk on a daily basis and would recommend it to anyone interested in multiple desktop software. It’s light weight fast, and flexible. Can Subversion be hosted over a network? Yes, if you want to host SVN over a LAN the easiest way is to use svnserve.exe like I did for my presentation. You can see how this was done in “Demo\Resources\1 Serve Repo.bat”. One nifty trick you can do is set up a “Scheduled Task” to launch svnserve.exe whenever the computer starts, this way someone doesn’t have to be logged in to the server to run svnserve.exe. Another option is to host SVN internet. Apache has great support for this , but my experience in this setup is limited. I work in a team of 5 would you recommend subversion? Yes. In fact, I would recommend subversion even for a team of one. What do I need to setup subversion for myself? At the bare minimum, you will need the Subversion binaries. I have an example of these in demo. Aside from that you can use the more advanced tools listed above.


  1. It was a really good presentation!

  2. Hello,

    I have never used source control before. I have a friend that uses SourceGear Vault. While Vault is not free, how would you compare it to Subversion?



  3. tlf-

    Personally, I've never used Vault. I really can't speak to it. But there were a few people at the presentation that did. They said Vault can do everything I described in SVN, branching, merging, etc.

    I would recommend looking at the slide deck in my presentation materials, check out the "Traits of a good VC system" slide. Research, and ask your friend to see if Vault covers most of them. If so, I see no reason not to go with Vault.

    Hope that helps,