Are you a software developer who uses Git version control, or needs to start using it for work or a side project?
This 2-hour advanced command-line course takes away the guesswork. It builds on my free, introductory course Short and Sweet: Get Started with Git and GitHub Right Now and my intermediate-level collaboration course to tackle tough topics like 'git reset', recovering lost commits and searching source-code file contents.
Save time and master your local Git workflow - fast!
Using Git on the command line can seem difficult because the commands are exacting, and they can trip you up if you get out of sync - but Git is very powerful and absolutely essential for modern software developers.
That's because Git has become a mainstay of modern software version control.
In less than 2 hours, this Short and Sweet course will take you from intermediate to advanced command-line Git skills, without a lot of filler. At the end of the course, you'll be able to roll back changes with 'git reset', un-stage or remove files with 'git rm', navigate the git log with confidence, recover lost commits from the reflog, use 'git grep' to find text in your source code files, and compare changes across commits and branches with 'git diff'.
That's a great trade for 2 hours of your time!
Please note: This is a command-line-based course designed to get you productive FAST. This course assumes you already have a GitHub account, have installed Git on your computer, and have pushed your first commit. It also assumes you have basic knowledge of Git and GitHub collaboration, branching and merging.
If you haven't used Git before, please enroll for free in my 30-minute introductory course Short and Sweet: Get Started with Git and GitHub Right Now. And if you've only used Git for solo projects, you may get more out of this course if you take a course on Git and GitHub collaboration first.
But if you've already taken the introductory course, you're somewhat familiar with basic Git and GitHub collaboration workflows, and you're ready to master your local Git workflow, this course IS for you and I hope you'll enroll.
Second note (for serious students ONLY!): This course works best if you dive in and type the commands in your own local Git repository while watching the lectures. (Please use a non-mission-critical repository for learning purposes!)
Of course, you can always just watch the lectures and take notes, which should give you some base of knowledge about how to navigate the local Git command-line.
But I encourage you to choose the active approach. I'm here to support the course, and if you put in the work and reach out when you have questions, I will put in the work to help you succeed.
My goal is to make this course series the best-ever guide to getting GOOD at Git on the command-line, starting from zero with the intro course and proceeding through competent mastery. Please let me know if anything in the course could be clearer, and I'll be happy to help you. It also will help me improve the course.
If you're ready to learn more and sign up for the course, go ahead and hit that Enroll button - Udemy offers a 30-day refund guarantee, so there's no risk to you!
This lecture reviews the basic Git workflow and introduces a new workflow: the 'git reset' workflow.
This lecture shows you how to use 'git reset --soft' to roll back from committed files to staged files.
This lecture demonstrates how to use 'git reset --mixed' to roll back from committed files to modified files, and how to use 'git reset --hard' to entirely erase changes when rolling back to the prior commit.
This lecture walks you through several examples of the 'git reset' workflow and introduces the idea of rolling back multiple commits.
This lecture provides a written comparison of three different uses of the 'git reset' command, plus a downloadable chart as a supplemental resource.
This lecture introduces the git log and walks you through navigating it on the command line.
This lecture shows how the git log can be useful when rolling back more than one commit with 'git reset'.
This lecture introduces the git reflog and walks you through one way of recovering a lost commit from the reflog.
This lecture demonstrates how to search through the git log's commit message history using 'git log --grep'. It also shows how 'git log --graph' can illustrate merge history.
This lecture walks you through using 'git grep' to search the contents of files in your software project directory.
This lecture demonstrates how to search through the contents of deleted files - with one important exception!
This lecture shows you how to use 'git diff' in three ways to compare different versions of your software project.
This downloadable PDF compares the three ways to use 'git diff' we learned in the prior lecture.
This lecture provides next steps and additional resources for students who complete the course and want to learn more about git and alternatives.
Stephanie is a software developer, IT risk management expert and former journalist who loves learning. After several false starts, she taught herself to program in 2012 and wants to teach programming the way she wishes it had been explained to her. In addition to delivering online training courses through 219 Labs, her projects include developing a software tool that allows you to program in plain English. She has a master's degree in information security policy and management from Carnegie Mellon University, a bachelor's degree in journalism from Northwestern University, and attended Recurse Center (formerly Hacker School) in 2014. Her interests include organic food, art, travel and doing good work.