DILR-DEV-025 · Git & GitHub (Version Control)

Learn to track project history, branch and merge confidently, collaborate through GitHub pull requests, undo mistakes safely and select an appropriate team workflow. By the end, you will have practised the exact Git and GitHub flow used in modern software teams.

DADilr AcademyOfficial

What you'll learn

  • Explain how Git stores snapshots and the role of the working directory, staging area and repository
  • Create and manage commits, branches and merges to develop features in isolation
  • Resolve merge conflicts using structured workflows and tooling
  • Synchronise local and remote repositories with clone, push, fetch and pull
  • Collaborate on GitHub using pull requests, code review and Issues
  • Undo changes safely with restore, reset, revert and reflog
  • Compare and apply merging versus rebasing for integrating work
  • Select and implement a suitable team workflow, tag releases and automate CI with GitHub Actions

Curriculum

Module 1: Version-Control Fundamentals3 topics
  • 1.1 Why Version Control & How Git Is Distributed
  • 1.2 Commits, DAG & HEAD Pointer
  • 1.3 The Three Trees Model
Module 2: Core Git Workflow & .gitignore3 topics
  • 2.1 Repository Init, Config & Core Commit Loop
  • 2.2 Inspecting History with log & diff
  • 2.3 Building a .gitignore
Module 3: Branching, Merging & Conflict Resolution3 topics
  • 3.1 Creating & Navigating Branches
  • 3.2 Merge Types & Reading Commit Graphs
  • 3.3 Resolving Merge Conflicts
Module 4: Remotes & Synchronising with GitHub3 topics
  • 4.1 Adding a Remote & Publishing to GitHub
  • 4.2 Cloning, Pushing & Pulling
  • 4.3 Fetch vs Pull & Tracking Branches
Module 5: Pull Requests & Collaborative Workflows3 topics
  • 5.1 Opening & Managing Pull Requests
  • 5.2 Code Review Best Practices
  • 5.3 Choosing a Team Workflow & Tagging Releases
Module 6: Undoing Changes Safely3 topics
  • 6.1 Restore & Unstage Workflow
  • 6.2 Reset: Soft, Mixed & Hard
  • 6.3 Revert & Reflog for Shared Safety
Module 7: Rebasing, Cherry-picking & History Rewriting3 topics
  • 7.1 Merge vs Rebase: Graph Comparison
  • 7.2 Interactive Rebase & Squashing Commits
  • 7.3 Cherry-pick & The Golden Rule
Module 8: Advanced Tools, CI/CD & Integration Project4 topics
  • 8.1 Stash: Shelving Work in Progress
  • 8.2 Bisect: Finding the First Bad Commit
  • 8.3 Intro to GitHub Actions & CI Checks
  • 8.4 Mini-Project: From Branch to Release

About this course

Learn to track project history, branch and merge confidently, collaborate through GitHub pull requests, undo mistakes safely and select an appropriate team workflow. By the end, you will have practised the exact Git and GitHub flow used in modern software teams.

Prerequisites

  • Basic command-line usage
  • Ability to edit plain-text files