Chapter 2. Setting up a source control system


This chapter covers

  • Choosing the right source control system
  • Using Subversion on the server and client sides
  • Setting up a TFS 2010–based source control system

Continuous integration (CI) isn’t possible without a source control system. As a matter of fact, it’s difficult to set up any reasonable software manufacturing process without one, regardless of whether you’re using CI. As soon as you progress beyond being a lonely developer spitting out code in a dark corner of a dorm room, you’ll have to think about setting up a proper place for your code to reside. You need a place you can send the fruits of your work and from where you can receive the work of your colleagues.

In the dawn of time, there was a harsh division of functionality, and every developer had their own EXE or DLL to work on. Everyone worked on a separate part of the code and submitted their work to someone whose sole task was to integrate the code from various developers into one codebase. Those times are long gone. We now have automated systems that do the trick. They reside somewhere in the net (intra or inter doesn’t matter). Every developer works closely with the system. They push their work onto it and regularly pull the work of others out to a local construction site.

2.1. Choosing the right source control system for you

2.2. Setting up a Subversion source control server

2.3. TortoiseSVN and working with the repository

2.4. Setting up Team Foundation Server

2.5. Summary