Whats the easiest way of learning git and github?

Whats the easiest way of learning git and github?



Where can I learn how to use git and github?


There’s a git course in the cirriculum. Have you completed it? It will teach you the basics of how to setup your local/remote and then how to push pull fork clone, branch etc.

From there i would start making a repo for all of the projects that you do - hands on trial and error learning works best for me personally


I agree with @Swoodend
Do the course and make notes.


The best way to learn is to jump right in by putting small bits of code into repos. You should definitely create repos of any FCC projects or side projects you are working on.

Try this tutorial:

Github Bootcamps:


Use this book as a reference:

I just started this course on Udacity. I don’t think it’s gonna go too deep but it’s something:


Nodeschool has a great course: https://github.com/jlord/git-it


You should consider checkout out the On-Demand GitHub training here: https://services.github.com/on-demand/.

Also, there are some free webinars if you’re into that. Sign up here: https://services.github.com/training/


Just to pile on, codeschool.com’s first-level course on Git is free: https://www.codeschool.com/courses/try-git. I’ve completed it and don’t feel like I “know Git” yet, but it definitely gets the ball rolling.


Creating a small project in a repos is probably the best way to go. Read some docs, and then apply and get back to it whenever necessary. Use all the features of course


When you do a project on FCC, do it on your own computer and create a github repo for it. Whenever you don’t know how to do something, research it. You can’t learn git (or anything) by reading about how something works and sitting by that knowledge for years.

The only reason to learn github is because you have to use it, so use it.


I’m sorry, but these are completely false. Git docs read like gibberish, especially to a newbie. Unless you install some good GUI (I’ve tried two when I started, and neither of them did a very good job in clarifying anything), there is no way for a beginner to know what exactly is that god damn repository thing, not to mention differences between workspace, staging area and so on. Git is a very nice and useful tool, but most of tutorials and instructions for it are just garbage.

That being said, the Udacity tutorial linked by @the-thief is really great. It’s fairly long, but it gives you a very clear picture of what to do, why you want to do it and what is going under the hood. I strongly recommend that one.


this site has a complete install of most software and walk-through training of git usage


I should specify that I meant creating repos on Github as a starting point. I didn’t start using git locally, with the command line, until I was really comfortable with Github.

Github is very visual and lets you start working with commits and branches with out getting bogged down with the command line.

Here’s the learning path I followed.

I just finished the second lesson of the Udacity course. I can’t recommend this course enough. It’s not just about giving you git commands. They get you to think about why you use those commands. They clearly illustrated when I should create a commit and made me think about what should be included in a commit.

The scope of this course is a little narrow as far as commands go. For this reason it’s best to read Pro git as it covers a few more commands.

I started an html file with useful commands and a brief description of what it does so I don’t have to keep looking things up on Google and Stackoverflow. I found most git searches point to stackoverflow questions and the Official Git docs. Stackoverflow can be good but sometimes the result is a little different than what you are looking for. As @KamilCybulski mentioned the git docs are not very helpful.

The reason is that there are way to many optional parameters and the examples given don’t cover enough.

I keep things organized by main command and entering the different modes and useful parameters in seperate entries below.
Here’s an example of a command I found on Stackoverflow that undoes the last commit but leaves the changes made to the file(s) intact.
git reset --soft HEAD~

git reset --hard HEAD~ on the other hand deletes the commit and reverts the file to the state of the previous commit.

These are very useful commands as you can imagine but not ones that would be easy to find in the docs. I added it to my list for easy access so I don’t have to keep Googling it and then tracking down the specific Stackoverflow answer.

I simply add commands tp my list I find in any of the above reources which I found helpful and which I think I will use again.


Make a github account, make a repo, and push all of your solutions to FCC problems to this repo.


Ok, that sounds much more sensible. I actually went the other way around, starting with just bare git. Now that I think of it, github is a quite decent visualization of git concepts and mechanisms.



This video worked best for me - https://www.youtube.com/watch?v=0fKg7e37bQE.


You can learn git by going through the community curated resources - https://hackr.io/tutorials/learn-git


Hello, this short article shows you the exact steps you have to take to publish your project (repository) on github if you use VS Code editor. I wrote it because I keep forgeting them :slight_smile:


Hi, do you mean on the FCC curriculum? I’m a newbie and I’m reading so much about github but I haven’t grasped how it works yet.