Version Control Concepts
Introduction
Change Management is the discipline to track the changes in a project’s source code. Version Control System tools support a team of developers working on the same repository each with their own working copy. There are many aspects to version control. This lesson will cover some basics of git.
Feature Branching is a release management technique for isolating user stories into their own source repository branch. This permits user stories to be integrated into the master branch at the time of the team’s choosing.
In any team project, there will be times when multiple developers make changes to the same files. In most cases, the changes do not overlap and so they can be automatically merged. However, there will be cases in which the changes do overlap. This lesson finishes with a discussion of merge conflicts resolution.
Learning Outcomes
- Describe what change management is and why it’s important
- Describe the basic workflow of a distributed version control system
- Use fundamental
gitcommands to perform version control - Use feature branching to facilitate release management of individual user stories
- Identify types of merge conflicts, and prevention and resolution strategies
Study Resources
For your study of this topic, use these resources.
Web Articles and Blogs
- Git project
- Git Cheat Sheet
- Getting Started With Git
- How to Write a Git Commit Message
- Feature branching your way to greatness
- Feature Branch
- Resolve Merge Conflicts
Wikipedia
Class Lecture
Exercises
- Ensure that you have completed the set up tasks for DB0
- Ensure your development branch is created and configured correctly and begin DB1 - chat, DB1 - rideshare, or DB1 - library