Learn Git and GitHub like a boss. You'll learn the everyday workflow (and more) that every developer uses when working in teams (and at companies!)
Sign up for $14.95 View CurriculumAKA. Git Essentials, the updated version for the modern web developer.
This is a course that will teach you everything you need to know about working with Git and GitHub.
By the end of this course you will have the knowledge and confidence you need to work in a team.
I've worked with several teams over the years and everything you'll learn in this course is what I tend to use almost every day and certainly every week.
Here's the rough outline of everything you'll learn in this course:
Plus we'll work through lots of real life examples together and get you hands on experience with all of this by creating your own repositories, forking my repo, and even safely opening a pull request on my work for some seriously hands on experience (because Git is better learned by doing).
And if you're still not convinced you'll learn some cool things in this course, free free to take the totally free version of this course. There are videos from this course that are entirely FREE on Git for Everybody
This course is also available on Skillshare.com. Check it out here.
1. Welcome to Git Essentials Free Lesson
Welcome to this course. Here's a very brief overview of what we'll be working on together, and what you'll learn along the way.
1m 39s
2. Why the command line?
Let's talk about how learning the command line method will set you up for success in the future
1m 51s
3. Installing Git (Windows Only) Free Lesson
How to install Git on your Windows computer
2m 29s
4. Installing Git (MacOS and Linux) Free Lesson
How to install Git on Mac and Linux computers
4m 06s
5. Getting started with GitHub
Let's jump into GitHub! GitHub is a free service for your public projects.
2m 56s
6. Configuring Git on your computer Free Lesson
Configuring git on your computer will tell GitHub, GitLab, and other services who you are. It's how you digitally sign your work.
2m 07s
7. Creating and adding an SSH Key
SSH keys let you bypass entering your username and email address every time you want to make a change. Don't worry, SSH keys are just as safe as entering your password.
4m 49s
8. How to clone a repository Free Lesson
Let's take a look at the "git way" to copy files from GitHub to your computer
3m 17s
9. How to create a new repository on GitHub
Create a brand new repository on GitHub and add your first file to it!
4m 53s
10. How to push to your GitHub repository Free Lesson
Learn how to add new files to your repository and get them to show up on GitHub
8m 42s
11. Git status
`git status` is the most popular command you'll use when using Git. You'll need to know it well.
4m 48s
12. Unstaging a file
What happens if you accidentally stage a file for a commit? Let's explore how to undo this.
2m 25s
13. Undeleting a file
Git is a magical program. It's so magical it can even bring files back from the dead. But there's one caveat..
3m 22s
14. Git origins and remotes
Learn what a git remote and git origin is. You'll need to know this when working on open source projects.
3m 31s
15. Git branching
Branching allows us to safely make changes to our codebase without having to effect everybody on the team. It's the safest method to writing code in teams.
4m 08s
16. Committing to a new branch
Branches share their main code base with the master branch. But pushing your changes to GitHub is a slightly different process. But it's easier than you expect!
4m 08s
17. Merging a branch into master
Merging is how you mix the code from one branch and mix it into another branch. It's an essential skill when using branches and working in teams.
3m 43s
18. Seeing your Git history
Git lets you travel through time and see your old work (and other peoples older work).
2m 17s
19. Downloading updates from GitHub
When working with other people, sometimes they will add work to GitHub that you don't have yet. You'll need to download those updates frequently, and here's how.
9m 50s
20. How to get updates from GitHub
Occasionally you'll want to see what updates are available in your branch but you might not be ready to apply them yet. Here's how we take a sneak peak into the future of our codebase.
5m 35s
21. Checkout: code-time travel
With git, because it's a version control system, you can essentially go back in time and look around the codebase.
9m 24s
22. README.md files
Readme files are one of the most common types of files you'll see in most git repositories. In this video we take a look at what they are, what goes into them, and how they work.
2m 37s
23. Viewing file differences
Git allows us to see the changes we've made in a file. There's no possible way we can remember all of our changes, but that's OK because git will keep track of it all for us.
4m 04s
24. How to ignore files
In a larger project you'll want to avoid adding useless files. In this lesson we'll dive into automating this so we never accidentally commit the wrong file like passwords, todos, or entire databases.
2m 25s
25. Create a custom Git alias
Git lets you create custom commands. In this lesson we'll create a custom git alias and improve our standard logging tool.
1m 52s
26. Fixing Git commit messages
We all make typos, it's a fact of life. But that doesn't mean you need to live with them. Learn how to fix a typo in a git commit.
2m 04s
27. How to fork a repo
Forking is an insanely important part of using Git and services like GitHub and GitLab
4m 10s
28. Git issues
Issues are a somewhat mislabelled feature, but they are incredibly important when working with other people. Let's demystify this feature.
3m 37s
29. How to open a pull request
Pull requests are going to be a common feature and tool you'll use when working in a team. This is the official method for asking, "Can I mix my code into yours?"
9m 33s
30. Undoing a commit
We've all accidentally made a commit we wish we could take back. Maybe it was missing files, maybe it was work on the wrong branch. Either way, let's undo it!
5m 34s
31. Force pushing
Force pushing is dangerous, and occasionally required. Learn about the dangers and uses of a force push. (I really wish this was a Star Wars reference!)
5m 56s
32. How to rebase
Rebasing is similar to a merge, but it's how the pro's do it. There are pros and cons to using a rebase over a merge, and we'll explore all of that together in this lesson.
5m 05s
33. Resolving merge and rebase conflicts
When you try to merge/rebase code into other branches or other repos, and you and someone else has made a change on the same line.. you'll get a conflict! Let's resolve them both now!
15m 44s
34. How to stash code
Stashing code is kind of like a temporary save feature. It lets you save all your work, work on other files, and come back exactly where you left off. It's a life-saving tool for every developer.
8m
35. Adding tags to your commits
Tags are used less often than other features in this course, but they can be incredibly useful especially when it comes to adding version numbers to your project.
7m 32s
36. Final lesson
A summary lesson of what we've learned, and additional resources for you to use after this course! Check the description for links! 🎉🎉
4m 52s