Skip to main content
CF

The Ultimate Git Course

5h 11m 52s
English
Paid

Git is the most popular Version Control System (VCS) in the world, crucial for tracking your project history, reverting code in case of errors, and enhancing collaborative work within a team.

This is why Git is a must-have skill, prominently featured in almost every software and DevOps engineer job description!

Understanding the Complexity of Git

Despite its widespread use, Git can be complex. Many seasoned developers use Git for years without fully understanding its inner workings.

Course Objective

This course is designed to demystify Git. Our goal is to provide you with a deep understanding of Git, enabling you to use it with confidence and ease. Once you've grasped how Git works, executing Git commands will become second nature.

Take Control of Git Commands

Say goodbye to blindly copying Git commands from StackOverflow and hoping they work. This course will empower you to take control of your Git usage!

This is the Git course I wish I had when I was learning Git!

About the Author: Mosh Hamedani (Code with Mosh)

Mosh Hamedani (Code with Mosh) thumbnail

Mosh Hamedani is the founder of Code with Mosh, one of the highest-volume independent online instructors in software education. He has been publishing courses continuously since the early Udemy era and has taught over a million students across his Udemy catalog and his standalone Code with Mosh platform. His teaching style is patient, rigorously structured, and deliberately beginner-tolerant — the courses are widely cited as some of the most accessible introductions to their respective topics.

The Code with Mosh catalog covers an unusually wide span: web development with HTML / CSS / JavaScript / React / Angular / Node.js, Python and Django, C# and .NET, mobile development with React Native and Flutter, SQL and database fundamentals, and the algorithm / data-structure interview prep tracks. Few independent instructors maintain this much breadth at consistent quality.

The CourseFlix listing under this source carries over 35 Code with Mosh courses spanning that range. Material is paid; Code with Mosh runs on per-course pricing on the original platform. Courses are aimed primarily at developers picking up a new technology from a clean start through to working production proficiency.

Watch Online 103 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 103 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: 1- Introduction
All Course Lessons (103)
#Lesson TitleDurationAccess
1
1- Introduction Demo
00:40
2
2- How to Take This Course
00:52
3
3- What is Git
02:32
4
4- Using Git
03:04
5
5- Installing Git
01:29
6
6- Configuring Git
05:05
7
7- Getting Help
00:52
8
8- Cheat Sheet
00:30
9
1- Introduction
00:35
10
2- Initializing a Repository
02:33
11
3- Git Workflow
04:36
12
4- Staging Files
03:38
13
5- Committing Changes
02:14
14
6- Committing Best Practices
02:00
15
7- Skipping the Staging Area
01:25
16
8- Removing Files
02:03
17
9- Renaming or Moving Files
02:19
18
10- Ignoring Files
06:35
19
11- Short Status
02:53
20
12- Viewing Staged and Unstaged Changes
05:00
21
13- Visual Diff Tools
04:54
22
14- Viewing History
02:13
23
15- Viewing a Commit
03:59
24
16- Unstaging Files
02:51
25
17- Discarding Local Changes
01:49
26
18- Restoring a File to an Earlier Version
02:17
27
19- Creating Snapshots with VSCode
01:57
28
20- Creating Snapshots with GitKraken
03:25
29
1- Introduction
00:49
30
2- Getting a Repository
00:33
31
3- Viewing the History
02:23
32
4- Filtering the History
04:55
33
5- Formatting the Log Output
03:26
34
6- Aliases
02:19
35
7- Viewing a Commit
02:14
36
8- Viewing the Changes Across Commits
01:17
37
9- Checking Out a Commit
03:41
38
10- Finding Bugs Using Bisect
04:29
39
11- Finding Contributors Using Shortlog
01:19
40
12- Viewing the History of a File
01:09
41
13- Restoring a Deleting File
02:09
42
14- Finding the Author of Line Using Blame
01:09
43
15- Tagging
02:42
44
16- Browsing History Using VSCode
04:26
45
17- Browsing the History Using GitKraken
05:02
46
1- Introduction
00:43
47
2- What are Branches
02:39
48
3- Getting a Repository
00:19
49
4- Working with Branches
05:13
50
5- Comparing Branches
01:53
51
6- Stashing
04:05
52
7- Merging
03:22
53
8- Fast-forward Merges
06:55
54
9- Three-way Merges
03:17
55
10- Viewing Merged and Unmerged Branches
01:09
56
11- Merge Conflicts
05:35
57
12 - Graphical Merge Tools
04:59
58
13- Aborting a Merge
00:42
59
14- Undoing a Faulty Merge
05:27
60
15- Squash Merging
05:26
61
16- Rebasing
08:25
62
17- Cherry Picking
01:55
63
18- Picking a File from Another Branch
01:45
64
19- Branching in VSCode
09:07
65
20- Branching in GitKraken
04:29
66
1- Introduction
00:47
67
2- Workflows
03:58
68
3- Creating a GitHub Repository
02:48
69
4- Adding Collaborators
01:04
70
5- Cloning a Repository
02:53
71
6- Fetching
04:35
72
7- Pulling
03:48
73
8- Pushing
02:27
74
9- Storing Credentials
01:46
75
10- Sharing Tags
01:39
76
11- Releases
02:20
77
12- Sharing Branches
03:22
78
13- Collaboration Workflow
06:44
79
14- Pull Requests
08:21
80
15- Resolving Conflicts
03:29
81
16- Issues
02:28
82
17- Labels
00:49
83
18- Milestones
01:43
84
19- Contributing to Open-source Projects
03:55
85
20- Keeping a Forked Repository Up to Date
05:20
86
21- Collaboration Using VSCode
02:34
87
22- Collaboration Using GitKraken
03:07
88
1- Introduction
00:48
89
2- Why Rewrite History
01:20
90
3- The Golden Rule of Rewriting History
03:48
91
4- Example of a Bad History
02:44
92
5- Undoing Commits
04:56
93
6- Reverting Commits
03:30
94
7- Recovering Lost Commits
02:37
95
8- Amending the Last Commit
03:39
96
9- Amending an Earlier Commit
05:45
97
10- Dropping Commits
04:29
98
11- Rewording Commit Messages
01:44
99
12- Reordering Commits
01:23
100
13- Squashing Commits
03:26
101
14- Splitting a Commit
03:22
102
15- Rewriting History Using GitKraken
02:09
103
17- Course Wrap Up
00:28
Unlock unlimited learning

Get instant access to all 102 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What are the prerequisites for enrolling in this Git course?
The course does not specify any prerequisites, making it accessible to beginners who are new to version control systems. However, familiarity with basic command-line operations and a general understanding of how software development projects are structured can be beneficial. The course starts with fundamental concepts such as installing and configuring Git, ensuring that even those without prior experience can follow along.
What kind of projects or exercises will I work on during the course?
Throughout the course, you will engage in practical exercises that focus on real-world applications of Git. For instance, lessons involve initializing a repository, staging and committing changes, working with branches, and resolving merge conflicts. These exercises are designed to simulate typical scenarios encountered in collaborative software development environments, providing hands-on experience with Git's functionalities.
Who is the target audience for this Git course?
The course is aimed at software developers and DevOps engineers who wish to deepen their understanding of Git, as well as beginners who want to establish a solid foundation in version control systems. Given Git's prevalence in software development and DevOps job descriptions, the course is particularly beneficial for those seeking to enhance their professional skill set in these fields.
How does this Git course compare to other similar courses in terms of depth and scope?
This course provides a comprehensive look at Git, covering a wide range of topics from basic operations like initializing a repository and committing changes, to more advanced topics such as using visual diff tools and resolving merge conflicts. With 103 lessons, it delves into the intricacies of Git commands and workflows, offering more depth than many introductory courses that might only cover basic version control concepts.
What specific tools or platforms are covered in the course?
The course includes lessons on using Git with Visual Studio Code and GitKraken. These lessons teach how to create snapshots and browse history using these graphical tools, providing students with the skills to use Git not only from the command line but also through popular version control interfaces.
What topics are not covered in this Git course?
While the course covers an extensive range of Git-related topics, it does not delve into other version control systems or broader collaborative software development tools like continuous integration platforms. The focus remains on mastering Git's functionalities and commands rather than exploring related tools or systems.
What is the expected time commitment to complete the course?
The course consists of 103 lessons, though the total runtime is not specified. Students should expect to dedicate several hours to not only watch the lessons but also engage with the practical exercises that accompany them. The time commitment may vary based on each student's prior experience and pace of learning.