Git Advanced
Advanced Git techniques — reflog recovery, bisect debugging, worktrees, submodules, hooks, filter-branch, and patch workflows.
Git Basics
Essential Git commands for everyday development — clone, commit, push, pull, and branch management.
Git Bisect
Git bisect — binary search through commits to find exactly which change introduced a bug. Automation with scripts and best practices.
Git Branching
Master Git branching — create, switch, merge, and delete branches. Complete branch workflow reference for teams.
Git Cherry-Pick
Git cherry-pick — selectively apply commits from one branch to another. Conflict resolution, ranges, and real-world use cases.
Git Config
Git configuration — global vs local settings, essential aliases, useful defaults, conditional includes, and productivity-boosting configuration.
Git Diff
Git diff — compare commits, branches, staged changes, working tree. Word diff, diff filters, range diff, and practical diff workflows.
Git Hooks
Git hooks automation — client-side and server-side hooks for linting, testing, commit message validation, and deployment triggers.
Git LFS
Git Large File Storage — manage large binary files in Git repositories. Track, migrate, lock, and optimize workflows for assets and datasets.
Git Log
Git log mastery — formatting, filtering by author/date/file, pretty formats, graph visualization, searching commits, and log customization.
Git Merge & Rebase
Git merge vs rebase explained. When to use each, how to resolve conflicts, interactive rebasing, and cherry-picking.
Git Reflog
Git reflog — your safety net for recovering lost commits, understanding HEAD@{n} references, and undoing almost anything in Git.
Git Remotes
Managing Git remotes — multiple upstreams, origin management, fetch vs pull, upstream tracking, remote branches, and fork synchronization.
Git Reset
Git reset — soft, mixed, and hard reset explained. Undo commits, manipulate staging area, and understand the danger levels of each mode.
Git Revert
Git revert — safely undo commits by creating new inverse commits. Revert vs reset, reverting merge commits, and best practices for shared branches.
Git Squash
Squashing Git commits — interactive rebase squash, fixup, autosquash, and best practices for clean commit history before merging.
Git Stashing
Master git stash — save, list, apply, pop, drop, branch from stash, partial stashing, and cleaning up your stash stack.
Git Submodules
Managing Git submodules — adding, cloning, updating, removing submodules, and keeping nested repositories in sync.
Git Tags
Git tags — lightweight vs annotated tags, creating, listing, pushing, deleting, checking out, signing tags with GPG, and release management.
Git Troubleshooting
Common Git errors and fixes — detached HEAD, merge conflicts, push rejected, divergent branches, authentication issues, and recovery techniques.
Git Worktrees
Git worktrees — manage multiple working directories from a single repository, ideal for hotfixes, parallel features, and code reviews.
GitFlow Workflow
GitFlow branching model — main, develop, feature, release, and hotfix branches. Structured release management for teams with scheduled releases.
GitHub Workflow
GitHub collaboration workflow — Pull Requests, code reviews, Issues, Projects, Actions CI/CD basics, and repository management.
Gitignore
Master .gitignore — pattern syntax, global gitignore, negation, directory-specific rules, and best practices for keeping repositories clean.
Trunk-Based Development
Trunk-based development — short-lived branches, daily merges to main, feature flags, and CI/CD practices for high-velocity teams.