| Command | Scope | Description |
|---|
| git init | Repo | Creates an empty Git repository |
| git clone | Repo | Clones a repository into a new directory |
| git branch | Repo | Creates, lists, renames or deletes branches |
| git log | Repo | Displays a record of commits |
| git add | File-level | Adds a change in the working directory to the index |
| git commit | Commit-level | Creates a unique snapshot of the staging area |
| git push | Commit-level | Uploads data to a remote repository |
| git fetch | Commit-level | Synchronizes with a remote repository |
| git pull | Commit-level | Updates the HEAD with the latest changes |
| git checkout | Commit-level | Switches between branches or inspects other commits |
| git checkout | File-level | Discards changes or replaces files with versions from other commits |
| git reset | Commit-level | Discards commits or throws away uncommited changes |
| git reset | File-level | Unstages a file |
| git restore | File-level | Discards changes in the working directory |
| git revert | Commit-level | Undoes commits |