# Version Control

> Git and friends: what they actually do, and how to stay calm when they break.

5 guides.

- [Git From Zero - Version Control for People Who've Never Used It](https://themissingmanual.dev/guides/git-from-zero) _(beginner)_ - Start from nothing: what version control is, how to install Git, make your first commit, and get your code on GitHub - calmly, with every step explained.
- [Git, Explained Like You're a Human](https://themissingmanual.dev/guides/git-explained-like-a-human) _(beginner)_ - What Git actually is, what every everyday command really does, and how to stay calm when it breaks.
- [Git With Other People - Branches, Pull Requests, and Not Stepping on Toes](https://themissingmanual.dev/guides/git-with-other-people) _(intermediate)_ - How real teams use Git: feature branches, keeping your work in sync with a moving main, and getting changes in through pull requests - without overwriting anyone.
- [Git Disaster Recovery - Getting Back What You Thought You Lost](https://themissingmanual.dev/guides/git-disaster-recovery) _(advanced)_ - The advanced rescue kit: recover 'lost' commits with the reflog, use rebase safely, and undo work you've already pushed - calmly, even at 2am.
- [gitignore, LFS, and Submodules](https://themissingmanual.dev/guides/gitignore-lfs-submodules) _(intermediate)_ - Keep junk, secrets, and giant files out of your repo, and tame the submodule: the settings that stop you committing node_modules or a 2GB video.
