
In this section, I explain the usefulness of storytelling as a mechanism for learning. I introduce you to the contents of this section, which revolve around Amy and her colleagues and how they iterate on their workflow and will ultimately converge on a workflow highly resembling Git.
In this lecture, we'll start with Ana's simple workflow. We'll then go over how Ana realizes the need for checkpointing and backing up her work and how a simple change to her workflow gives her both those abilities.
In this lecture, I'll explain some basics of hashing. We'll need these concepts for the next lecture.
In this lecture, we'll go over how Ana uses hashes to reduce duplication of files across commits.
In this lecture, Ana helps Blake (a new contributor to UsChat) onboard. I'll introduce the concept of diffing commits.
In this lecture, we'll learn about the core ideas behind diffing and patching. We'll also get some hands-on experience with the Unix utilities diff and patch.
This lecture details how Blake uses the diff and patch commands to get his work incorporated into the main line of work maintained by Ana.
In this lecture, Ana and Blake come up with a way to avoid commits getting overwritten when syncing with the SFTP server.
In this lecture, Ana and Blake package up their Version Control System (VCS) to be used by others. It acquires a more mature user interface and starts to resemble Git even more.
In this lesson, I'll go over some basic command line utilities and concepts that you need to know to follow the rest of the material.
In this lesson, we resume where we left off in the last lesson and learn some more basic command line utilities and concepts that you need to know to follow the rest of the material.
In this lecture, we'll inspect the commit we created in the last lecture. In the process, we'll learn a bit about how Git stores commits internally. We'll also learn some Git commands that help us inspect commits.
In this lesson, we're going to create a second commit as a successor to our head commit. We'll examine that commit as well and learn a bit more about Git. Specifically, we'll learn more about Git's internal representation of commits, git show, git log and git help.
In this lesson, we're going to learn about the staging area and how it can help us be more explicit about which changes get included in our commits.
In this video, I provide the solution to the exercise left at the end of the last lesson.
In this lesson, we reset our repository to a state before we made the last 2 commits. This lesson will introduce us to the git reset command and to the idea of rewriting history.
In this lesson, we learn about git add's interactive adding capabilities. We use it to carefully stage a very precise list of changes.
In this lesson, I will introduce you to the git diff command and explain how to use it to study the staging area.
This lesson is an introduction to the git checkout command. We'll use git checkout to briefly navigate the history of our project.
In this video, I recap the story from section 2, so we can pick it back up.
Ana and Blake take Tig out for a test drive after all those tweaks and analyze problems with it.
This course is designed to help you gain The Git Mindset. Using mechanisms like storytelling, hands-on-labs and quizzes, you'll gain a deep intuition about Git. To follow this course, you don't need any prior knowledge.
The course uses a story to explain not only what Git does, but also how it does those things and why it was designed that way.
Note: This course is up-to-date and uses the newer commands (switch and restore) introduced in Git 2.23.
Gitting the hang of it - Building intuition about Git
This section goes over the story of the smallest team with the simplest workflow - a lone developer named Ana who's working on her software project on her personal machine. Over time, we'll introduce additional requirements like the need to manage historical versions, the need to create backups, the need to collaborate with additional team members etc. Each of these requirements will lead to a change in the version control system and eventually this fictitious version control system (Tig) will have evolved into something very much resembling Git. This section will help you internalize the core concepts of Git with ease.
Gitting our hands dirty! - studying Git basics
We'll take a break from learning the core concepts of Git and try using Git ourselves. This entire section is a series of labs where you'll follow along and get hands on experience with Git. You'll find that the previous section has prepared you with enough core concepts that you'll find everything quite straight forward. By the end of this section, you'll know how to craft commits with care and how to study them.
The team Gits going again!
This section will resume the story of Tig. This time, we'll use storytelling to arrive at the concepts of branching and merging. The story will help you not only understand what branching and merging are, but also how they work and what kinds of problems they help us solve.
Let's Git back into it - resuming our study of Git
This section takes the concepts illustrated through a story in the last section and shows you how they apply to Git. By the end of this section, you'll be comfortable with branching and merging in Git. You'll know how to navigate the history of your project with ease. This will help you greatly with navigating new codebases and in troubleshooting bugs.
Dealing with remotes
This section shows you how to manage Git remotes and how to transfer information between them. The concepts covered in this section are essential for effectively managing your repository through source code hosting providers like Github, Bitbucket, Gitlab etc.
By the end of the course, you'll truly understand Git and you'll be able to use it like it's second nature.
This course comes with a 30-day money back guarantee. No questions asked.
--------------------------------------------------------------------------------------------------
All emojis designed by OpenMoji – the open-source emoji and icon project. License: CC BY-SA 4.0