Book Image

Learning Continuous Integration with TeamCity

Book Image

Learning Continuous Integration with TeamCity

Overview of this book

Table of Contents (19 chapters)
Learning Continuous Integration with TeamCity
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Introducing version control systems


Version control systems (VCSs) help us to record and track changes to files. Most often, the files that are being tracked are source code files, but they could in reality be any kind of file imaginable. With VCSs, we can look back at all the changes made to a file (or set of files) and who performed them. We can move back to a particular revision if we find a problem with the current one and also pinpoint who caused it. VCSs are also called revision control systems, configuration management tools, and source code manager.

Centralized versus distributed VCSs

Early examples of VCSs were CVS and Subversion (SVN). These are now known as centralized VCSs. In the past, there was a centralized server where several clients checked out code and checked them in after necessary changes were made. In such a system, the server was the single source of truth and also the single point of failure.

More recently, another breed of VCSs has emerged. These are distributed VCSs...