
Connect to a linux virtual machine on an aws ec2 instance via ssh, install and configure git, and verify the installation, and set global user name and email for commits.
Demonstrates turning a normal directory into a git repository with git init, revealing the hidden dot git folder and its commit history, configurations, metadata, and hooks.
Track the lifecycle of files in git from untracked to modified to staged to committed and learn to use status, add, commit, and log to manage changes.
Explore the dot gitignore file, learn patterns to ignore temporary and system files like log files, node_modules, and ds_store, and see how to apply and commit changes in git.
Explore the basics of GitHub, including remote repositories and collaboration. Create an account, navigate the interface, and push changes from your local git to back up online.
Push your work from a local git repository to a remote hub on platforms like GitHub to enable collaboration, backup, and continuous integration, issue tracking, and deployment pipelines.
Create and verify a new GitHub account by signing up with email or Google and choosing a professional username. Access your dashboard to manage repositories and explore open source projects.
Create your first GitHub repository by choosing owner, name, and visibility (public or private), adding a description, and optionally a readme, gitignore, or license, then push your local project online.
Compare https token-based authentication with ssh key authentication for GitHub, and learn how to generate an ssh key pair, add the public key to GitHub, and test the connection.
Learn to connect your local git project to remote repositories on GitHub or GitLab, push and pull changes, and distinguish fetch from pull while cloning for collaboration.
Learn how to clone GitHub repositories using https and ssh, create local copies, commit changes, and push to origin, with hands-on steps using readme.md and Hello.txt.
Master common git workflows by stashing changes, learning rebasing to keep history clean, and watching a hands-on demonstration that reinforces practical, smooth collaboration.
Explore git rebasing to move commits onto the latest main branch, rewrite history for a cleaner, linear history, and understand when not to rebase on shared branches.
Learn to version a project release in GitHub using tags and releases, mark milestones with v1.0 on the main branch, add release notes, and publish assets on the releases page.
Learn how git tags mark specific commits for versioning, explain lightweight and annotated tags, and push them to remote repositories to create GitHub releases.
Version control is the backbone of modern software development, it’s how developers track changes, collaborate seamlessly, and manage complex projects with confidence. At the heart of it all lies Git and GitHub, the most widely used tools for code versioning and collaboration.
This course takes you from the very basics of version control systems to real-world GitHub collaboration, ensuring you gain both practical knowledge and hands-on experience.
Whether you’re a beginner, a developer stepping into team workflows, or a project manager who wants to understand how code collaboration works, this course will equip you with everything you need to confidently use Git and GitHub like a pro.
What’s in this course?
We’ll begin with the fundamentals of Version Control Systems, explore the differences between Centralized (CVCS) and Distributed (DVCS) systems, and understand why Git revolutionized version control.
From there, you’ll install and configure Git across different operating systems, learn the core concepts of repositories, commits, branches, and merges, and then move on to GitHub, where real collaboration begins.
Through demonstrations, you’ll perform push, pull, clone, and rebase operations, handle merge conflicts, and learn how to create pull requests, manage issues, and collaborate with others using GitHub’s workflow.
You will build practical projects, including:
Setting up and configuring Git across Windows, macOS, and Linux
Working with files - tracking, committing, and managing changes
Using branching, merging, and rebasing to handle project versions
Connecting your local Git with GitHub using HTTPS or SSH
Understanding the difference between git fetch, git pull, and git push
Collaborating with others via Forks, Issues, Discussions, and Pull Requests
Using GitHub Projects, Wikis, and Actions for productivity and automation
Tagging and versioning project releases
By the end of this course, you’ll be able to:
Use Git confidently for solo and team projects
Manage repositories and track changes like a professional developer
Collaborate effectively using GitHub’s tools and workflows
Automate workflows and manage project documentation efficiently
Special Note
This course is packed with hands-on demonstrations, practical examples and real-world troubleshooting, ensuring you don’t just learn Git commands, but also understand how and when to use them in real projects.
Course Structure
Lectures
Step-by-step Demonstrations
Practical Scenarios & Troubleshooting
Course Contents
Introduction to Version Control System and It’s Types
Different VCS Tools and Why Git?
Working with Files in Git
Understanding .git Folder & various git command
Various Branching Operations and Merging Strategies
GitHub Fundamentals and its need?
GitHub Remotes and Repositories
Everyday Situations in Git with Practical Scenario/Usecases
Workflow & Collaboration in GitHub
Conflict Resolutions
Tagging and Versioning
GitHub Projects, Wikis, Issues, Pages
Troubleshooting tips
All sections of this course are demonstrated live, with the goal of encouraging enrolled users to set up their own environments, complete the exercises, and learn through hands-on experience!