Title: Git 101
Subtitle: Command git and github to contribute to open source projects
Section Lecture Title Lecture Type Learning Activity Resources Timing
Name (talking head, (key points covered, how will (text editor, terminal, (total time for this lecture /
screencast, etc) students engage in learning) presentation, video, tool learning activity)
for coding exercises, quiz,
Consider - is this passive or active etc )
for a student?
Introductory Section
Navigating This Talking Head w/ Who is this course for? What are Talking Head (Need 3-5 Minutes
Course Slides the prerequisites? What will you Slides, Mic, Camera)
learn? (Passive)
Gitting Installed Screencast Getting Git installed in the Terminal 2-4 Minutes x2 (One for
(Mac + Windows terminal (Mac + Windows) Mac, One for Windows)
Separate)
Other Installs Screencast Talk about Sublime Text vs other Chrome 2-4 Minutes
options and show the students
where to download Sublime Text
(which version, etc.)
Interacting with the Terminal
Basic Terminal Screencast Learn how to navigate the Terminal 5-7 Minutes
Commands terminal with the following
commands: cd, ls, pwd; Follow
along video where students can
follow along with me while I
navigate through my computer
using the commands.
Intermediate Screencast Learn how to create folders and Terminal 2-4 Minutes
Terminal files: mkdir, touch
Commands
Terminal Cheat Article Cheat sheet for terminal Pdf file N/A
Sheet (Included in commands and their structure
the first lecture)
Git
Initializing Your Screencast Reinforce terminal skills by Terminal, Text Editor 3-5 Minutes
Repository creating a folder and files and
then initialize a git repository for
the “project”; Follow along video
creating a folder with a few files
in it and then using “git init”
Staging Files and Screencast Understand how to “make a Terminal, Text Editor 3-5 Minutes
Committing Them commit”; git status, git add, git
commit, git log
Back in Time Screencast Understand how to revert using Terminal, Text Editor 3-5 Minutes
both git revert and git reset;
understand the differences and
use cases of both -- more talking
about differences and use cases
Start Your Novel Assignment style Reinforce concepts of initializing Terminal, Text Editor N/A
Screencast a git repository and committing
changes as well as reverting.
Branching Screencast Understand how to make a Terminal, Text Editor 5-7 Minutes
branch and why branching is
useful; git branch, git checkout
Editing Your Assignment style Reinforce the benefit of Terminal, Text Editor N/A
Novel Screencast branching and how to branch
Merging Screencast Understand how to merge a Terminal, Text Editor 7-9 Minutes
branch into another; git merge,
how to resolve conflicts
Finalizing Your Assignment style Reinforce how to now merge a Terminal, Text Editor N/A
Novel Screencast branch, preview collaboration
Few More Instructional Sections
Advanced Topics
Rebasing vs. Screencast Understand the difference Terminal, Text Editor 3-5 Minutes
Merging between Rebasing and Merging
and advantages of both
(preferences)
Squashing Screencast Understand squashing commits Terminal, Text Editor 3-5 Minutes
and when to squash vs straight
merge
Diff and Blame Screencast Go over git diff and git blame Terminal, Text Editor 3-5 Minutes
Stashing Screencast Go over git stash Terminal, Text Editor 2-4 Minutes
Closing Section
Recap and Thank Screencast Thank you, Recap, Where to go Chrome, Slides 2-4 Minutes
you from here, resources for
understanding more about Git