You have to make a choice. Choose...wisely.

Get occasional notifications about things like product discounts, blog posts, and new or updated tutorials. Unsubscribe at any time.

Gift Delivery Options
Quick Checkout
or Pay by Credit Card
Error processing your payment
  • You didn't choose whether or not to be added to the mailing list
Confirm
$0.00

Payments and credit card details are securely managed and protected by Learn Enough's payment processor, Stripe. More information on their site:

CART
Total
$0.00

Your Cart is Empty

$30
$300
$300
$XY
$XY
1234

Unleash the power of tracking & collaboration with version control

Learn Enough Git Developer Fundamentals 03
Learn Enough Git to Be Dangerous by Michael Hartl covers an often-overlooked but essential skill in modern computing: version control. Git, the most popular and powerful version-control system, lets you track changes in software projects while also enabling collaboration with millions of developers around the world. Read full post
- or -
SCROLL DOWN TO LEARN MORE
ebooks
140 pages
screencasts
2 hours
course
4 chapters
 
26 videos
 
59 exercises

Get Started Now!

Course Subscriptions

$ 19
per month
Course

Full online version of the tutorial, embedded streaming videos for all sections, exercises with editable answers, progress tracking, and membership in the Learn Enough Society (community exercise answers, private chat group). Pause your subscription at any time!

$ 39
per month billed annually
All Access Subscription
All Access Subscription includes the course version of all the tutorials (streaming video, exercise answers, and progress tracking), and access to the Learn Enough Society to get help if you need it
MORE INFO
Need a little help?

Learn Enough offers a generous scholarship program to help out in case cost is a factor. We’ve already awarded over 1500 Learn Enough Scholarships to a wide variety of recipients, including students, people between jobs, and residents of countries with unfavorable exchange rates. Applications are quick, easy, and 100% confidential. Learn More

Money-Back Guarantee

All Learn Enough tutorials come with a 60-day 100% money-back guarantee. If for any reason you aren’t satisfied with any tutorial purchase, just let us know and we’ll refund your payment.

Master Version Control With Git

Never Lose Changes Again


Tutorial 03 in the
Developer Fundamentals Series

This is the place to start learning technical sophistication. Learn Enough Developer Fundamentals covers three essential tools for the aspiring computer magician: the Unix command line, text editors, and version control with Git. After this level, you will be in a position to collaborate with millions of developers around the world, even if you're not (yet) a developer yourself.

Change tracker/collaboration accelerator

Keep a history of all the changes you make

Version control solves a problem that might look familiar if you’ve ever seen Word documents or Excel spreadsheets with names like Report_2014_1.doc, Report_2014_2.doc, Report_2014_3.doc, or budget-v7.xls. These cumbersome names indicate how annoying it can be to track different versions of documents. Learn Enough Git to Be Dangerous teaches you how to use Git, the most popular and powerful version control system.

A version control system provides an automatic way to track changes in software projects, giving creators the power to view previous versions of files and directories, develop speculative features without disrupting the main development, securely back up the project and its history, and collaborate easily and conveniently with others. In addition, using version control also makes deploying production websites and web applications much easier. As a result, fluency in at least one version control system is an incredibly valuable skill for developer, designer, and manager alike.

To be productive with Git, you don’t have to know everything about it—you just have to learn enough to be dangerous.

Git fundamentals

Learn the basics of git

In Learn Enough Git to Be Dangerous, you’ll learn how to create a Git repository for the files in a sample project consisting of a simple website. You’ll also learn how to commit changes to the project, thereby insuring that the changes won’t ever be lost.

Using GitHub

Set yourself up with a powerful service

You’ll also learn how to set up a remote repository at GitHub, a wildly popular site for sharing and collaborating on projects and code. This remote repo includes a handy file called README.md (written in the intuitive Markdown formatting language), which tells potential users and collaborators about your project.

Save to a safe place

Save all of your changes to the cloud

As an essential next step, you’ll learn how to push project changes to the remote repository. Then you’ll learn the useful practices of making a branch, which lets you make changes in isolation—without changing the main project—and then merge the changes in when you’re ready to share them.

Collaborate with Git

Coding is easier with friends

Finally, you’ll learn how to use Git to collaborate with other developers. This includes cloning (copying) repositories and learning what to do when changes from two developers conflict. You’ll also discover how Git (combined with GitHub) enables an amazing surprise bonus for your sample website—one that will give you bragging rights with all of your friends.

Is all of this…

Sounding good?

Happy people

saying nice things!

Jimmy Wales Founder, Wikipedia

Q: What is Jimmy Wales' favorite book?

A: It changes often. At the moment, it’s Ruby on Rails Tutorial by Michael Hartl. :)


Quora link
About the Git Tutorial

Going through Git is wonderful. I am actually learning… I’ve done three other Git tutorials and still felt so lost. Doing it all now makes so much sense. It’s like a light bulb.

— Janelle S.

Michael does a great job of structuring this tutorial and thrusts the users quick into the world of Git with real examples and a hands-on approach. Just one of a series of great books. Highly recommended.

— Satisfied Reader

Thanks to the Git skills I started building with your tutorial, I now run Git workshops to teach other students this great tech.

— Eric Z.

I stumbled upon your website by luck a couple weeks back and since then I have gone through the Developer Fundamentals series, which I have to say exceeded my expectations and filled in many gaps in my knowledge which multiple other online tutorials failed to do.

— Tayyab I.
<blockquote class="twitter-tweet" data-cards="hidden" data-lang="en"><p lang="en" dir="ltr">I&#39;ve done a lot of programming tutorials and I just want to commend <a href="https://twitter.com/LearnEnough?ref_src=twsrc%5Etfw">@LearnEnough</a>&#39;s intro tutorial (text editor, git, terminal, HTML) for showing how to make a website and publish it to the world. None of the other tutorials have made it &quot;click&quot; like this one. Thanks guys. <a href="https://t.co/1hQvaTWQdt">pic.twitter.com/1hQvaTWQdt</a></p>&mdash; Calvin Fung (@theCalvinEffect) <a href="https://twitter.com/theCalvinEffect/status/1084602512861057024?ref_src=twsrc%5Etfw">January 14, 2019</a></blockquote>
About the Learn Enough Courses

I must say, this Learn Enough series is a masterpiece of education. Thank you for this incredible work!

— Michael K.

I must say, this Learn Enough series is a masterpiece of education. Thank you for this incredible work!

— Michael K.
<blockquote class="twitter-tweet" data-lang="en"><p lang="en" dir="ltr">I have nothing but fantastic things to say about <a href="https://twitter.com/LearnEnough?ref_src=twsrc%5Etfw">@LearnEnough</a> courses. I am just about finished with the <a href="https://twitter.com/hashtag/javascript?src=hash&amp;ref_src=twsrc%5Etfw">#javascript</a> course. I must say, the videos are mandatory because <a href="https://twitter.com/mhartl?ref_src=twsrc%5Etfw">@mhartl</a> will play the novice, and share in the joy of having something you wrote actually work! 🤓</p>&mdash; claudia marie (@StarvingHearts) <a href="https://twitter.com/StarvingHearts/status/1134234858157355008?ref_src=twsrc%5Etfw">May 30, 2019</a></blockquote>

I want to thank you for the amazing job you have done with the tutorials. They are likely the best tutorials I have ever read.

— Pedro I.

I have been trying to learn web development and programming on and off for the past 3 years and your website is the first one that I feel does the job right.

— Janelle S.

Just bought the new ebook and want to say keep up the great work!! The Learn Enough to Be Dangerous series re-ignited my desire to code after 10+ years of “meh”.

— Diane Y.

The Learn Enough Society and the courses are incredible. It’s the best value in the market of online courses in my opinion. Like you say, it’s learning to tech, which is very useful in our world.

— Sébastien D.

I just meant to tell you: your tutorial books from the Learn Enough series are awesome! The books are well-written, clear, concise, super-useful, and even fun to read. Thank you so, so much for this! I have bought the first three and will buy whatever you publish next. Keep up doing this very good work and thanks again.

— Pierre W.

Have been following the whole “Learn Enough to Be Dangerous” series and am VERY impressed with it. I am a project manager who works with software developers daily. These sessions have provided me with a huge amount very useful information, to the extent that I now not only understand what the dev guys are talking about, but am starting to use the tools (command line, Git, etc.) that they use.

— Brian

Michael Hartl is one of the best educators around when it comes to web development. I have been following him for a long time, and everything he produces is top quality. If you are looking for a quick way to become a thorough and productive professional web developer, Hartl’s books are a great place to start.

— Abram Bailey
<blockquote class="twitter-tweet" data-conversation="none" data-lang="en"><p lang="en" dir="ltr">Also - if you are working through <a href="https://twitter.com/RailsTutorial?ref_src=twsrc%5Etfw">@RailsTutorial</a> you will probably check out <a href="https://twitter.com/LearnEnough?ref_src=twsrc%5Etfw">@LearnEnough</a> quite soon, which is an incredible resource for people starting out. Same high quality as the rails tutorial, while still digestible for people starting out.</p>&mdash; Michael Wallbaum (@mwallba) <a href="https://twitter.com/mwallba/status/988590924203679744?ref_src=twsrc%5Etfw">April 24, 2018</a></blockquote>

Hi, my name is Philip, and I’m a beginning learner of web development. I’ve dabbled in small ways in Ruby/Rails for about a year and a half. Occasionally, I write ruby scripts to solve problems at my job. I also dabble in learning: JavaScript, Ember, more Ruby/Rails, brief intro readings into Scala.

I’ve tried Codeschool, Codecademy, and I’ll stop there, so you don’t spend the next 3 hours reading all the different learning resources I’ve tried.

Ruby on Rails Tutorial (Rails 5) is undoubtedly, the most effective and educational resource I’ve ever come across when it comes to learning anything about web development or writing any code on any level.

Here’s what you seem to understand that everyone else just gets wrong: There’s a big spectrum between the very beginner basics: declaring variables, to voodoo, magical, incantational trickery of witchcraft, like building your own web server.

Almost all tutorials make this mistake. The first couple “lessons” are good for people who don’t even have a clue what computer programming is and then suddenly, there’s a big jump to what seem to be concepts that only seasoned developers have mastered.

Thanks for such a great, educational guide in Ruby on Rails.

— Philip

If that all sounds good...

Try the Tutorial Out

About the Author
Michael-hartl

Michael Hartl

Michael Hartl is the creator of the Ruby on Rails Tutorial, one of the leading introductions to web development, and is cofounder and principal author at Learn Enough. Previously, he was a physics instructor at the California Institute of Technology (Caltech), where he received a Lifetime Achievement Award for Excellence in Teaching. He is a graduate of Harvard College, has a Ph.D. in Physics from Caltech, and is an alumnus of the Y Combinator entrepreneur program.

Join the Mailing List

Get occasional notifications about things like product discounts, blog posts, and new or updated tutorials. Unsubscribe at any time.