# SD3.2-B Version Control # Background This skill covers how to apply version and configuration management to the development of (parallel) programs in order to track and control changes in the sources and how to establish and maintain consistency of the program or software system throughout its life, and facilitate cooperative development. Systems like Revision Control System (RCS), Subversion (SVN), and GIT are presented. # Aim # Outcomes * Describe the basics of version control systems, e.g. what is version control. * Discuss the benefits of using version control for software development especially in a team. * Describe what is branching and merging. * Assess the difference between distributed and centralized version control systems. * Apply basic Git concepts. * Apply basic SVN concepts. * Use basic git commands such as git add, git commit, git pull, git push. * Use SVN commands. * Resolve merge conflicts. # Subskills * [[skill-tree:sd:3:2:i]] * [[skill-tree:sd:3:2:e]]