Since its inception, Git
has attracted skilled developers due to its robust, powerful, and reliable features. Its incredibly fast branching ability transformed a piece of code from a niche tool for former Linux
Kernel developers into a mainstream distributed versioning system. Like most powerful tools, Git can be hard to approach since it has a lot of commands, subcommands, and options that easily confuse newcomers. The main purpose of Git Essentials is to help you overcome this fear and become adept at all basic tasks in Git. This book starts with an introduction to version control systems, and after this you'll delve deeply into the essentials of Git. This serves as a primer for the topics to follow such as branching and merging, creating and managing a GitHub personal repository, and fork and pull requests. You will then learn the art of cherry-picking, taking only commits you like, followed by Git blame. Finally, you'll learn how to migrate from SVN using Git tools or TortoiseGit and migrate from other VCSs, concluding with a collection of resources, links, and appendices.