Chapter 1: Introduction to Version Control and Git
Why Use Version Control Systems (VCS)?
Centralized vs Distributed VCS
Introducing Git: A Distributed Approach
Core Git Concepts: Repository, Commit, Branch
Installing Git on Windows
Initial Git Configuration (user.name, user.email)
Getting Help with Git Commands
Chapter 2: Your First Git Repository
Creating a New Repository with git init
The Git Workflow: Modified, Staged, Committed
Checking the Status of Your Files (git status)
Adding Files to the Staging Area (git add)
Committing Changes (git commit)
Writing Good Commit Messages
Viewing Commit History (git log)
Understanding .gitignore Files
Hands-on Practical: Initialize and Make First Commit
Chapter 3: Viewing History and Undoing Changes
Comparing Changes (git diff)
Viewing Changes Between Commits
Viewing Staged vs Unstaged Changes
Unstaging Files (git reset HEAD )
Amending the Last Commit (git commit --amend)
Reverting Commits (git revert)
Removing Files from Git (git rm)
Moving or Renaming Files (git mv)
Practice: Inspecting and Modifying History
Chapter 4: Branching and Merging Basics
What Are Branches in Git?
Creating a New Branch (git branch)
Switching Between Branches (git checkout or git switch)
Making Commits on a Branch
Merging Branches (git merge)
Understanding Fast-Forward Merges
Deleting Branches (git branch -d)
Hands-on Practical: Branching and Merging Workflow
Chapter 5: Working with Remote Repositories
Introduction to Remote Repositories
Common Hosting Platforms (GitHub, GitLab, Bitbucket)
Adding a Remote Repository (git remote add)
Viewing Remote Repositories (git remote -v)
Cloning an Existing Repository (git clone)
Pushing Changes to a Remote (git push)
Fetching Changes from a Remote (git fetch)
Pulling Changes from a Remote (git pull)
Understanding origin and upstream
Practice: Cloning, Pushing, and Pulling