When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

Git Complete: The definitive, step-by-step guide to Git
Go from zero to hero with Git source control step-by-step with easy to understand examples. Become the next Git expert!

This Course Includes
udemy
4.4 (34K reviews )
6h 16m
english
Online - Self Paced
professional certificate
Udemy
About Git Complete: The definitive, step-by-step guide to Git
Git Complete
This course is designed to be a comprehensive approach to Git, which means no prior knowledge or experience is required but students will emerge at the end with a very solid understanding and hands-on experience with Git and related source control concepts.
Recent Course Updates
Added _Updates and Errata_ section
Added _Tagging_ section
Course Outline
Course Introduction and Overview
provides an introduction to this course and the Git source control system and sets the stage for the rest of the course. After the introduction, the first thing we do is
Git Installation
for both Windows and Mac.
Quick Start
a very quick (15 minutes), hands-on introduction to Git. We start off by signing up for GitHub, creating a repository there, the makiing a local copy (clone), local changes (add/commit) and then update GitHub with our changes (push). In
Basic Commands
, we walk through all the foundational commands needed to start a new project managed by Git (or enable Git for an existing project) all the way through making commits, including common file operations like moving and deleting files. We also cover how to exclude the wrong files from accidentally being committed and how to review your repository's history. With a strong foundation in place, we explore ways to make
Comparisons
in Git, including all the different local states, between commits, and between local and remote repositories. We give great attending to
Branching and Merging
in Git. We start off with the simple "happy path" and learn about "Fast-Forward" merges and how to control them. The we walk through common "automatic" merges. Finally, we cause trouble on purpose so we can step through resolving conflicting merges with our visual merge tool. With a strong foundation in branching and merging, we will then cover a more complex topic,
Rebasing
. In that section, we cover several rebasing examples, including how to resolve a rebase conflict. In the
Stashing
section, we save our work-in-progress while we attend to more pressing issues, then pick up where we left off after that. _
NEW:
_ In the
Tagging
section, we mark important milestones or releases within our project. We also use those tags later for comparing differences between important milestones. We also look at how to use tags within GitHub.
All tools
have _installation_ and _configuration_ sections to ensure no one is left behind.
Course Features
Presentations
provide audio/video training of conceptual ideas. Since few like slide-ware presentations, slide-presentations are kept to a minimum.
Screencasts
provide a video of the instructor's computer system with any actions, commands, or screens displayed and narrated. There is nearly 4 hours of screencast based video training in order to step through each command or action in sufficient detail. Several
attachments
and
document
lectures throughout the course provide supplemental information, illustrations, or other reference material.
Moving Forward
This course will expand periodically to include more topics, supporting materials and bonus content! Some content may be in direct response to student feedback or discussions -- so get engaged with the course discussions feature!
What You Will Learn?
- Learn the key concepts of the Git source control system .
- Step through the entire Git workflow .
- Compare the different states in Git and compare between branches and commits .
- Manage files with Git (move, rename, delete) and update files managed outside Git .
- Create and fork repositories on GitHub and push changes back after working after working on them locally .
- Create branches and resolve merge conflicts like a pro.