Professional Documents
Culture Documents
Version 1.0 3 0 0 3
Pre-requisites/Exposure Exposure to Programming in any language like C/C++
Course Outcomes:
At the end of this course student should be able to
CO1. Explain the technical aspects about Continuous Integration and Continuous Deployment.
CO3. Assess workflows in various version control system like Git ,Svn , Mercurial
CO4. Interpret comparison between version control system and distributed version control system.
Catalog Description
As “software eats the world,” to use Marc Andreessen's (Co-founder, Netscape and leading Software
Entrepreneur) phrase, versioning becomes critical to business success because corporate value is often
contained in the software assets created by the company. As such, companies need to balance speed,
flexibility, and collaboration with the need to lock down and protect that intellectual property. Yet, as
companies embrace DevOps, they find friction between the teams responsible for development and those
responsible for delivery. In short, the demands of DevOps require deeper functionality and more
collaborative capabilities than traditional version control systems deliver. From a DevOps point of view, it
is important to properly use a source code management tool as a natural meeting point for different roles
and teams in your organization.
• Developers live and breathe source code management. It's their bread and butter.
• Operations personnel also favor managing the descriptions of infrastructure in the form of code,
scripts, and other artifacts.
• Modern day software delivery originates from multiple branches and pipelines and scm tools are
needed to maintain high velocity of software delivery.
• Quality assurance personnel can store their automated tests in codified form in the source code
repository.
Course Plan
UNIT I Fundamentals of Software version Control 12 Lecture Hours
Introduction to continuous integration and deployment, Version control system, Agile and Scrum
Methodologies, DevOps, History of Source Code Management, Need for Software version Control,
Repository vs Directory concepts, tools, Git basics and interactive git, Recording commits to local and
remote repository.
Study of features of - SVN, Mercury and Git, History - Linux and Git by Linus Torvalds , Branch
management, branch workflows, test/dev/prod/feature/hotfix branches, Merge vs Rebase, Reverting the
changes.
UNIT III Version Control System Vs Distributed Version Control System 12 Lecture Hours
Local repository, Advantages of distributed version control system, The Multiple Repositories Model,
Completely resetting local environment, Revert - cancelling out changes, Contributing and managing a
distributed project on git, Integration manager workflow
Text Book
1. Pro Git – Book by Scott Chacon and Ben Straub (available at https://git-scm.com/book/).
2. Continuous Integration, Delivery, and Deployment: Reliable and Faster Software Releases with
Automating Builds, Tests, and Deployment, Sander Rossel, Packt
Reference Book
1. Version Control by Example, Eric Sink, Pearson
1 9 10 11 12 1 2 3
CO1 2 1 1 1 1 2
CO2 2 2 2 3 2 3 3 2 2 2 2
CO3 2 1 3 3 2 3 3 2 2 2 2
CO4 2 1 2 1 2 1 2