0% found this document useful (0 votes)
55 views

SCM Cho

The document provides a course plan for a Source Code Management course offered at Chitkara University Institute of Engineering & Technology. The course is a 4 credit hour course offered over 30 sessions in the second semester. It aims to enable students to become functional in open-source ecosystems and examine the functionality of version control systems like Git. Key topics covered include Git fundamentals, commands, branching, merging, remote repositories and resolving conflicts. Students will work on individual and group projects demonstrating the use of Git and GitHub for version control. Assessment includes in-session tasks and a final project submission.

Uploaded by

TARANGIT
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views

SCM Cho

The document provides a course plan for a Source Code Management course offered at Chitkara University Institute of Engineering & Technology. The course is a 4 credit hour course offered over 30 sessions in the second semester. It aims to enable students to become functional in open-source ecosystems and examine the functionality of version control systems like Git. Key topics covered include Git fundamentals, commands, branching, merging, remote repositories and resolving conflicts. Students will work on individual and group projects demonstrating the use of Git and GitHub for version control. Assessment includes in-session tasks and a final project submission.

Uploaded by

TARANGIT
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Course Plan

A. Course Handout (Version 1.1)

Institute/ Name Chitkara University Institute of Engineering & Technology


Department Name Department of Computer Science & Engineering
Programme Name Bachelor of Engineering (B.E.) Computer Science & Engineering
Course Name Source Code Management Session 2023 - 2024
nd
Course Code 22CS003 Semester/Batch 2 /2023
L-T-P (Per Week) 4-0-0 Course Credits 02
Course Coordinator Dr. Neeraj Singla

1. Scope and Objectives of the Course


This course helps learners to become functional in open-source ecosystem. The course focus on enabling
learners to examine the functionality of Software Version Control Systems. Version control systems are used to
maintain various versions of same source code for maintainability and agility. The learners shall utilize the
functionality of GIT to support version control of source code. The users of Software version control system are
able to assess workflows in various version control systems like Git. The learners can apply the workflows to
create collaboration with Co Participants on a software project.
After the completion of course student will be able to:
 Become familiar with environment of version control system.
 Utilize the functionalities of version control system to track running history for maintainability and agility
of source code.
 Work in Collaborative teams to work through open-source ecosystem.

2. Course Learning Outcomes


On completion of the course, the student will be able to:

Course learning Outcome POs CL KC Sessions

Describe the fundamentals of PO1,PO2,PO4,PO5,PO11,PO12 K2 Factual 5


CLO01 source code management and Conceptual
its history with examples.
CLO02 Relate to best practices to be PO1,PO2,PO3,PO4,PO5,PO9,PO1 K3 Fundamental 5
adopted by organizations to 0,PO12 Conceptual
achieve continuous integration.

CLO03 Compare the utility of PO1, PO2,PO5,PO9,PO12 K4 Conceptual 4


centralized and distributed Procedural
version control systems and
their basic operations.
CLO04 Utilize distributed version PO1,PO3,PO4,PO9,PO11,PO12 K4 Conceptual 4
control systems over centralized Procedural
version control systems.
CLO05 Design a remotely controlled PO1,PO2,PO3, PO5,PO9,PO11, K3 Conceptual 6
repository in an open-source PO12 Procedural
environment.

Total Sessions 30

Revised Bloom’s Taxonomy Terminology

Page 1 of 8
Course Plan

*Cognitive Level =CL


*Knowledge Categories = KC

Course PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
Learning
Outcomes
CLO01 H M L M M M
CLO02 H H H M M H M H
CLO03 M M H H M
CLO04 L M H M H
CLO05 H H H M H M M
H=High, M=Medium, L=Low

3. ERISE Grid Mapping

Feature Enablement Level(1-5, 5 being highest)

Entrepreneurship 3

Research 4

Innovation 4

Skills 5

Employability 4

4. Recommended Books (Reference Books/Text Books):

B01: Pro Git by Scott Chacon and Ben Strob,Apress Available at https://git-scm.com/book/en/v2
B02: Learn Version Control with Git: A step-by-step course for the complete beginner by Tobias Günther
B03: GIT: The Ultimate Guide for Beginners: Learn Git Version Control by Jameson Garner

5. Other readings and relevant websites:

Serial No Link of Journals, Magazines, websites and Research Papers


1. https://docs.github.com/en
2. https://docs.github.com/en/discussions
3. https://docs.github.com/en/communities
4. https://docs.github.com/en/developers
5. Github.com

6. Recommended Tools and Platforms


Github.com, Git Client available at https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

Page 2 of 8
Course Plan

7. Course Plan:
Session Recommended
Topics
Number Book
Introducing Version Control – Git client(CLI, GUI), Linux environment B01
1-3 Emulation
Installing git CLI and git GUI Initializing the repository, and exploring git –help
Exploring Github and Creating a Public Repository – Creating repository, B01
4-6 understanding controls on the panel, working on Git Hub alone, realizing the
significance of Git Client for Github utilization
Working With Git – Commands for initiating repos, managing repos B01,B02
Git status, add, commit, stage – Life cycle of a file in Git managed in Repos
7-9
Git branches and HEAD, Git branches management, Create a new branch,
Commit changes in the new branch, Explore commit in the new branch
Task 1.1 (Assessments)
Git Cloning, exploring and modifying public repositories - Cloning repository, B02
Exploring contents of the cloned repository, Unpacking Git objects, Exploring
10-12
cloned repository in GitHub Desktop, Commit changes in the cloned repository
Git Configuration Files – creating personalized configurations
Project work allocation : Students Project Group Initialize

Git attributes and gitignore, Staging files - /attributes for managing, filtering, B03
masking
13-15 Working With Git History – Forensics on GIT logs
Log, graphical history, undo changes in history – creating presentable GUI for
GIT activity in versioned repos
Merge Resolution In Git – Branching, tagging branches, creating test, dev, prod B01,B03
16-18 branches Scenario creation for conflict creation while merging branches by a
single user, multiple users
Git branch, basic conflict and merge resolution workflow- Resolution of merge B02,B03
conflicts
19-21
GitHub and remote repositories - Cloning remote repository, What is a remote
repository
Git push, fetch and pull operations - Pushing to the remote repository, B02,B03
22-24 FETCH_HEAD, perform a git pull, Git pull with fast forward merge, Resolving
conflicts during Git pull
Task 1.2 - (Assessments)

Project with teamwork demonstrating all aspects of GIT B01,B02


25-30
Task 2 - Assessments : Project Completion of each group and Submission the
project report.

8. Delivery/Instructional Resources

PPT Industry Web References Audio-Video


(link of ppts on Expert
Session
Topics the central Session
Number
server)

Introducing Version https://docs.gi 1. https://git- https://git-


1-3
Control – Git thub.com/en/r scm.com/book/en scm.com/video/wha

Page 3 of 8
Course Plan

client(CLI, GUI), Linux epositories/cr /v2/Getting- t-is-version-control


environment eating-and- Started-Installing-
Emulation managing- Git
Installing git CLI and repositories/cr
git GUI Initializing the eating-a-
repository, and template-
exploring git –help repository
Exploring Github and https://docs.gi 1. https://git- https://git-
Creating a Public thub.com/en/r scm.com/book/en scm.com/video/wha
Repository – Creating epositories/cr /v2/Getting- t-is-git
repository, eating-and- Started-First-
understanding managing- Time-Git-Setup
4-6 controls on the panel, repositories/cr 2. https://git-
working on Git Hub eating-a- scm.com/book/en
alone, realizing the template- /v2/Getting-
significance of Git repository Started-Getting-
Client for Github Help
utilization
Working With Git – https://docs.gi 1. https://git- https://git-
Commands for thub.com/en/r scm.com/book/en scm.com/video/wha
initiating repos, epositories/cr /v2/Git-Basics- t-is-version-control
managing repos eating-and- Getting-a-Git-
Git status, add, managing- Repository
commit, stage – Life repositories/cr 2. https://git-
cycle of a file in Git eating-a- scm.com/book/en
managed in Repos template- /v2/GitHub-
7-9
Git branches and repository Account-Setup-
HEAD, Git branches and-Configuration
management, Create 3. https://git-
a new branch, Commit scm.com/book/en
changes in the new /v2/Git-Basics-
branch, Explore Working-with-
commit in the new Remotes
branch
Git Cloning, exploring https://docs.gi 1. https://git- https://git-
and modifying public thub.com/en/r scm.com/book/en scm.com/video/wha
repositories - Cloning epositories/cr /v2/Git-Basics- t-is-version-control
repository, Exploring eating-and- Getting-a-Git-
contents of the cloned managing- Repository
repository, Unpacking repositories/cr 2. https://git-
Git objects, Exploring eating-a- scm.com/book/en
10-12 cloned repository in template- /v2/Git-Basics-
GitHub Desktop, Recording-
Commit changes in repository Changes-to-the-
the cloned repository Repository
Git Configuration Files
– creating
personalized
configurations
Git attributes and https://docs.gi 1. https://git- https://git-
gitignore, Staging files thub.com/en/r scm.com/book/en scm.com/video/wha
- /attributes for epositories/cr /v2/Git-Tools- t-is-version-control
13-15
managing, filtering, eating-and- Interactive-
masking managing- Staging
Working With Git repositories/cr 2. https://git-

Page 4 of 8
Course Plan

History – Forensics on eating-a- scm.com/book/en


GIT logs template- /v2/Git-Tools-
Log, graphical history, repository Stashing-and-
undo changes in Cleaning
history – creating
presentable GUI for
GIT activity in
versioned repos
Merge Resolution In https://docs.gi 1. https://git- https://git-
Git – Branching, thub.com/en/r scm.com/book/en scm.com/video/wha
tagging branches, epositories/cr /v2/Customizing- t-is-version-control
creating test, dev, eating-and- Git-Git-
prod branches managing- Configuration
16-18
Scenario creation for repositories/cr 2. https://git-
conflict creation while eating-a- scm.com/book/en
merging branches by a template- /v2/Customizing-
single user, multiple repository Git-Git-Attributes
users
Git branch, basic https://docs.gi 1. https://git- https://git-
conflict and merge thub.com/en/r scm.com/book/en scm.com/video/wha
resolution workflow- epositories/cr /v2/Customizing- t-is-version-control
Resolution of merge eating-and- Git-Git-Attributes
conflicts managing-
19-21
GitHub and remote repositories/cr
repositories - Cloning eating-a-
remote repository, template-
What is a remote repository
repository
Git push, fetch and https://docs.gi Industry 1. https://git- https://git-
pull operations - thub.com/en/r expert scm.com/book/en scm.com/video/wha
Pushing to the remote epositories/cr talk on /v2/Git-Basics- t-is-version-control
repository, eating-and- Git Viewing-the-
22-24 FETCH_HEAD, perform managing- Commit-History
a git pull, Git pull with repositories/cr
fast forward merge, eating-a-
Resolving conflicts template-
during Git pull repository
Project work with https://docs.gi NA
teamwork thub.com/en/r
demonstrating all epositories/cr
aspects of GIT like eating-and-
opening and closing a managing-
pull request, repositories/cr
25-30 collaborative work on eating-a-
GitHub, Explain utility template-
of Fetch and Pull while repository
collaboration and
implement a
distributed workflow
in a team.

9. Action plan for different types of learners

Slow Learners Average Learners Fast Learners


 Remedial Classes on Saturdays  Workshops  Coding Competitions

Page 5 of 8
Course Plan

 Encouragement for  Formative Exercises used to  Design Solutions for complex


improvement using peer highlight concepts and notions problems
tutoring  E-notes and E-exercise to read  Presentation on topics beyond
 Use of audio and visual material in adaptive to pedagogic those covered in CHO
 Use of Real-Life Examples metrical.

10. Evaluation Scheme & Components:Continuous evaluation shall be adopted

Evaluation No. of Weightage of Mode of


Type of Component
Component Assessments Component Assessment

Online on
Component 1 Continuous 02* 60%
GitHub
Evaluations
Online on
Component 2 Final Project 01** 40% GitHub
Evaluation

Total 100%

* In 02assessments of Component 1, the ERP system will automatically calculate the average of assessment
marks for evaluation to be incorporated in trail results.
** There will be no end-term exams and at the end, only students will submit a report of their project in the
form of a hard copy of the course.

11. Details of Evaluation Components:

Evaluation Syllabus Timeline of Weightage


Description
Component Covered (%) Examination (%)
Task 1.1 Upto 50% Week 4
Task 1 60%
Task 1.2 51% - 100% Week 8
Project Completion and Report
Task 2 100% Week 10 40%
Submission from the entire course
Total 100%

* As per Academic Guidelines minimum of 75% attendance is required to become eligible for continuous
evaluation

Evaluation Components

Type of Assessment Timeline of Total Description of Tasks for Evaluation


Conduct Marks But not limited is
1. Setting up of Git Client,
2. Setting up GitHub Account,
Task 1.1 Week 4 30 3. Generate logs
4. Create and visualize branches
5. Git lifecycle description
1. Add collaborators on GitHub Repo
2. Fork and Commit
Task 1.2 Week 8 30 3. Merge and Resolve conflicts created due to
own activity and collaborators activity.
4. Reset and Revert

Page 6 of 8
Course Plan

1. Create a distributed Repository and add


members in project team
2. Open and close a pull request.
3. Each project member shall create a pull
request on a team members repo and close
Task 2 Week 10 40 pull requests generated by team members on
own Repo as a maintainer.
4. Publish and print network graphs
5. Submission of report in PDF carrying
screenshots and detailed writing of steps
taken to achieve all tasks.

12. Syllabus of the Course:

Session
Topic No. of Lectures Weightage %
Number
Introducing Version Control – Git client(CLI, GUI), 3
Linux environment Emulation
1-3
Installing git CLI and git GUI Initializing the
repository, and exploring git –help
Exploring Github and Creating a Public Repository – 3
Creating repository, understanding controls on the
4-6
panel, working on Git Hub alone, realizing the
significance of Git Client for Github utilization 30 %
Working With Git – Commands for initiating repos, 3
managing repos
Git status, add, commit, stage – Life cycle of a file in
7-9 Git managed in Repos
Git branches and HEAD, Git branches management,
Create a new branch, Commit changes in the new
branch, Explore commit in the new branch
Git Cloning, exploring and modifying public 3
repositories - Cloning repository, Exploring contents
of the cloned repository, Unpacking Git objects,
10-12 Exploring cloned repository in GitHub Desktop,
Commit changes in the cloned repository
Git Configuration Files – creating personalized
configurations
Git attributes and gitignore, Staging files - 3
/attributes for managing, filtering, masking
Working With Git History – Forensics on GIT logs
13-15
Log, graphical history, undo changes in history –
creating presentable GUI for GIT activity in
versioned repos
Merge Resolution In Git – Branching, tagging 3 30%
branches, creating test, dev, prod branches Scenario
16-18 creation for conflict creation while merging
branches by a single user, multiple users

Git branch, basic conflict and merge resolution 3


workflow- Resolution of merge conflicts
19-21
GitHub and remote repositories - Cloning remote
repository, What is a remote repository

Page 7 of 8
Course Plan

Git push, fetch and pull operations - Pushing to the 3


remote repository, FETCH_HEAD, perform a git pull,
22-24
Git pull with fast forward merge, Resolving conflicts
during Git pull
Project with teamwork demonstrating all aspects of 6 40%
25-30
GIT

This documents approved by:

Designation Name Signature


Course Coordinator Dr. Sunil Gupta
Head – Academic Delivery Dr. Navjeet Kaur
Dean CSE Dr. Monit Kapoor
Date 09-01-2023

Page 8 of 8

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy