You are on page 1of 2

Software Version Control L T P C

Version 1.0 3 0 0 3
Pre-requisites/Exposure Exposure to Programming in any language like C/C++

Co-requisites Understanding of SDLC


Course Objectives

1. To enable learners to pick up fundamentals of Continuous Integration and Continuous


deployment.
2. To enable learners to pick up fundamentals of Agile led software delivery
3. To provide the learners understanding of applicability of version control systems.
4. To enable students, acquire thorough understanding of difference between version control system
and distributed version control system

Course Outcomes:
At the end of this course student should be able to

CO1. Explain the technical aspects about Continuous Integration and Continuous Deployment.

CO2. Examine the functionality of Software Version Control Systems.

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.

UNIT II Source Code Management tools and Git 12 Lecture Hours

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

Modes of Evaluation: Quiz/Assignment/ presentation/ extempore/ Written Examination


Examination Scheme:

Components MSE Presentation/Assignment/ etc ESE


Weightage (%) 20 30 50

Table: Correlation of POs and PSOs v/s COs


PO/CO PO PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO PO PO PO PSO PSO PSO

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

1=Weak 2= Moderate 3=Strong

You might also like