![Git](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKjcktGIpuMVpGvCIrflLTcbL4oRtXDvbNfNCcG5HNQaa-9w8OkVqZcpzabxIDtEJ8aBE55TgEgtfhtt494rN52JZ8uDqotnMt5WlTjZxIjrKY4i3TSEz16_YsLTKYPHmPSqwCYetIi37m3IVzyRTw761gY0Po_4YPLPJcOucGzdLhFmE7GRzIdBYBLy4/s0-rw/git.png)
1. Basics
1.1 Version Control
1.2 Repository
1.3 Clone
1.4 Initialize (git init)
2. Basic Commands
2.1 git status
2.2 git add
2.3 git commit
2.4 git push
2.5 git pull
2.6 git fetch
2.7 git merge
3. Branching
3.1 git branch
3.2 git checkout
3.3 git merge
3.4 git rebase
3.5 Branching Strategies (Feature Branching, Git Flow)
4. History and Inspection
4.1 git log
4.2 git diff
4.3 git show
4.4 git blame
5. Undoing Changes
5.1 git revert
5.2 git reset
5.3 git checkout --
6. Stashing
6.1 git stash
6.2 git stash apply
6.3 git stash pop
6.4 git stash list
7. Remote Repositories
7.1 git remote
7.8 git push
7.9 git pull
7.10 git fetch
8. Collaboration
8.1 Forking
8.2 Pull Requests
8.2 Code Reviews
8.4 Merging
9. Advanced Topics
9.1 Submodules
9.2 Hooks
9.3 Cherry Picking (git cherry-pick)
9.4 Rewriting History (git rebase, git filter-branch)
10. Configuration
10.1 .gitconfig
10.2 .gitignore
10.3 git config