Here is a list of commonly used Git commands with a brief description for each:
1. git init - Initializes a new Git repository.
2. git clone <repo> - Clones an existing repository into a new directory.
3. git status - Displays the status of the working directory and staging area.
4. git add <file> - Adds a file to the staging area.
5. git commit -m "message" - Commits changes in the staging area with a message.
6. git push - Pushes local commits to the remote repository.
7. git pull - Fetches and merges changes from the remote repository.
8. git fetch - Downloads objects and refs from another repository.
9. git merge <branch> - Merges a specified branch into the current branch.
10. git branch - Lists all local branches.
11. git branch <name> - Creates a new branch.
12. git checkout <branch> - Switches to a specified branch.
13. git checkout -b <branch> - Creates a new branch and switches to it.
14. git log - Displays the commit history.
15. git diff - Shows the differences between commits, commit and working tree, etc.
16. git reset <file> - Unstages a file while retaining the changes in the working directory.
17. git reset --hard - Resets the index and working directory to the last commit.
18. git rm <file> - Removes a file from the working directory and staging area.
19. git stash - Saves changes in a dirty working directory for later use.
20. git stash pop - Applies the most recently stashed changes and removes them from the stash.
21. git remote - Manages set of tracked repositories.
22. git remote add <name> <url> - Adds a remote repository.
23. git tag <name> - Tags a commit with a specified name.
24. git rebase <branch> - Reapplies commits on top of another base tip.
25. git cherry-pick <commit> - Applies the changes of a specific commit on the current branch.
26. git show <commit> - Displays changes in a specific commit.
27. git blame <file> - Shows what revision and author last modified each line of a file.
28. git config - Configures Git settings.
29. git archive - Creates an archive of files from a named tree.
30. git bisect - Uses binary search to find the commit that introduced a bug.
31. git clean -f - Removes untracked files from the working directory.
32. git mv <old> <new> - Renames or moves a file or directory.
33. git grep <pattern> - Searches for a pattern in the work tree.
34. git log --oneline - Displays the commit history in a compact, one-line format.
35. git reflog - Shows the history of changes to the tip of branches.
36. git submodule - Initializes, updates, or inspects submodules.
These commands cover the most common tasks you'll perform with Git.