Create your first repository on Github, from scratch! | Kalob Taulien | Skillshare

Create your first repository on Github, from scratch!

Kalob Taulien, Web Development Teacher

Create your first repository on Github, from scratch!

Kalob Taulien, Web Development Teacher

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
3 Lessons (11m)
    • 1. Introduction

    • 2. Intro, Cloning and Staging

    • 3. Committing, Pushing and Git Diff

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels
  • Beg/Int level
  • Int/Adv level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.





About This Class

In this course you will learn:

  1. What cloning, pushing, staging and committing are
  2. How to create a repo from scratch
  3. Make changes to your code
  4. Save that code on 
  5. Make more modifications and save it to


Meet Your Teacher

Teacher Profile Image

Kalob Taulien

Web Development Teacher


Hi everybody! I'm Kalob Taulien.


Here's the TL;DR (short) version about me:

I have been coding since 1999 and teaching people how to code since 2013 I have over 350,000 web development students world-wide I'm on the Wagtail CMS core development team (Wagtail is Python's #1 most popular website making system) I try my best to answer EVERY question my students have  I love teaching — it's definitely one of my natural talents  Also I love goats! (Great conversation starter with me if we ever get to meet in person)

Below you can find all my Skillshare courses. The categories go from easiest to hardest, except for the Misc. Coding Courses at the very end. 

If you're brand new to coding, start with BEGINNERS WEB DEV.&nb... See full profile

Class Ratings

Expectations Met?
  • Exceeded!
  • Yes
  • Somewhat
  • Not really
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Your creative journey starts here.

  • Unlimited access to every class
  • Supportive online creative community
  • Learn offline with Skillshare’s app

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.



1. Introduction: welcome to this crash course on. Get in this course, you will be learning how to create a repository with get, you're gonna learn how to get started with get and I'll be walking you through this entire process from start to finish on how to create and contribute to a repository. You will learn what a repository is. You will learn how to make changes to files, add new files and how to see the differences between files. And then I'm gonna teach you how to take all of your work and how to send it to get Hub. You will also learn a bunch of terminology like cloning, staging, committing repositories and pushing whatever these words mean. You'll know by the end of this course. And lastly, we're going to learn how to do all of this through the command line because one day you will be on a server deploying your code, whether that's front end codes and CSS and JavaScript or back end code, whether that's PHP or python, and you're going to need to know how to use get on the command line because when you're on a server, there is no graphic user interface it is all command line now. Why should you learn? Get Why is right now the best time for you to learn get well right? Now is the best time for you to learn. Get because every employer and every developer that you'll be working with is currently using get. It is an extremely valuable skill toe have. And while we will be using get Hub as the demonstration in this course that doesn't limit you, you can use bit bucket, get lab or several other get services. They all work the exact same way. The commands you'll be learning are all the exact same. I'm Caleb Holley. I'll be your instructor throughout this course, and when you are ready, step inside and we will learn. Get together. 2. Intro, Cloning and Staging: Hello. Welcome to a crash course lesson on Get and get hub. In this video, we're going to be talking about some terminology. Ah, we're gonna be looking at how to create a repository or a repo for short. And we're going to take that repo. We're gonna put it onto our computer, make some changes and push it up to get hub so that everyone can see our code. Now the first thing you need is a get hub dot com account. So go ahead and create a free account. It's absolutely free. Don't worry about paying for anything. I'm just assigned straight into my account. So there we go. I've got my log in, and what you're going to be looking for is this button called New Repository and get hub Every and then we'll change their layout, depending on various seven things. This button may not be on the left for you. It may be at the top, right? Depending on when you're watching a video. If you're part of an organization, etcetera, etcetera. So let's go ahead and create a new repository. I'm gonna call this one example Repo a short description in here. I wanted to be public. If we select private, then they're gonna ask us to pay for it. We don't want that. We just want a public repo just for learning purposes. Right now. If you need a private repo, try using get hub. I'm not get hub. Sorry. I meant get lab or possibly bit bucket. Um, we're not gonna cover those in this video. Go ahead and create that repository. And there we go. It gives us a bunch of stuff you're probably going. Oh, my God. I don't know what any of this is. I feel a little overwhelmed. Guess what? Don't worry about it. You can either go straight through all of the steps or if you want Teoh. Ah, you could just follow the rest of this video and I'm gonna do things a little bit differently. And we're gonna do it straight through the command line to make things nice and easy. Also because one day in the future, you're going to be using ah, the command line on a server. And there's no point and click like it's called a gooey graphical user interface. There's none of that stuff on a server. It's all command line. So let's just practice the command line today. I'm gonna take this, um, to copy it, and I'm going to open up my terminal, make this bigger so you can see my work. PWD tells me what directory I'm currently working in. In fact, let's not do it this way. Let's let's make this a little bit easier. So what I've done is I've gone into my account and I'm gonna create a new folder. I'm gonna call Websites and I'm gonna go in here and you can see that there's nothing in there now if we go back to my terminal, I can type CD websites and CD just stands for change directory. That's all it is. So I type CD plus the directory name and Toyota I'm now in there. So if I type pwd again, it tells me that I'm currently and users Caleb Tallinn websites. That's the directory I'm in. And now we want to clone this re bono. Cloning is just a really fancy term for saying I'm gonna copy this from get hub to my computer. That's it. So let's type get clone. I'm gonna paste that you're well in there, and it gives. It allows us to give an optional fourth parameter, and this is going to be the directory. Aim. So example. Repo is what I'm gonna call it and says cloning into example. Repo. Ah, you appear to have cloned an empty repository while we know it's empty, because if we go back in here, there's nothing in there. Let's go ahead and open this up incognito. There's nothing there. Cool, I guess. Actually, it's not cool at all. It's pretty boring. Ah, so let's change directory into example Repo. And now we're in the example Rebo directory, and we can do anything we want in here. And if we go back into our finder or explore whatever operating system you're using, Ah, you go into that example Rebo, and you can create a new filing here. If you want Teoh. I prefer to do it through sublime, and I'm going to, Ah, open a directory. Let's do this file open, and I should know I was already in. It got ahead of myself there. Cool. I've got example Repo, and what I'm going to do now is create a new file called Read me dot MD the dot MD make this bigger stands for mark down. It's a specific way of marking down a file so that it just styled the same as everybody else is. And first thing we're going to do is add a title with a It looks like the hashtag symbol and we're going to say example, Repo title and below this, we're going to say hello world and that's it. 3. Committing, Pushing and Git Diff: now if we go back into our terminal and we type l A stash L. A. We can see that there's new file in there called Read me dot MD. We can also type get status, which will tell us that we've got untracked file untracked files. Basically, it's just a new file. Clear this so we can work from the top of the terminal again. So if I do get status, get add type of read me. What that's going to do is going to stage it so staging and is like packaging it up into a box. But we haven't actually sent it out of our house yet. It's just being packaged like a nice Christmas gift. So I take get status again, and now it says these files are staged or this file because there's only one is staged and it's now in green. So that means this particular file is ready to get shipped up and sent over to get up. Now to do that, we do this thing called Commit, we do get commit dash em dash M stands for message or the commit message, and we're going to say initial commit, and it tells us that one file was change. There's two insertions. There's a create mode on a created new file. Awesome. If we go into our report right now, nothing has changed because get hub doesn't know about it. Get Hub is not scanning our computer to make sure that any change files go was up to get up . It's just waiting for us. So what we need to do now is again I'm unclear this Ah, we need to push this to get up. So we type get push origin master get is Thedc amand to execute through command line. Push is the command to execute with get because there are several commands. Um, origin is your branch and masters your default branch. So don't worry too much about what all this means unless you're familiar with branches and all that. But that's something to learn for a different day. We type get push origin master and it's going to say we're writing three objects. Three or done. Um, everything looks good. It's wrote the objects, it's compressed it and it is sent it to this u r l Now, when you type this into your computer, it's going to ask you to sign in and it's going to ask for your user name and password. That's totally okay. It's perfectly safe to do it with Get Hub. It didn't do it for me because I've got what's called an ssh key and get hub already knows that this computer that you're seeing right now, the one that I'm working on is already authorized to make these changes on my account. That's all it is. So it will ask you to log in. Go ahead, log in, and then it will show up with all this nice stuff. And if we go back to get refresher page, there we go. We've got her first Read me file. Now let's go ahead and make one change. Second change, that's all. We're gonna type just that line right there. So go back to our terminal. Get status. Oh, look, this one is now modified, and we can add that by type and get add. Read me. I used Tab to complete get status again. It is now staged. We know that because it says these changes are ready to be committed. It's currently in its staging process. It's green. It says it's modified it's ready to stage. Get commit second, uh, commit message. Let's just do that. Okay? Everything looks good. Get pushed. Foraging master again. This is going to ask you to log in, so you're gonna have to log in and we go back to get hub and Boom. There we go. We've got a second change. So there you go. That is a very fast paced introductory into how to create your own repository, how to clone it down to your computer, how to make changes, how to notice different changes and how to push all of your work up to get up. And you can add as many files as you want. Just remember, do not ever put passwords in there. Don't put credit cards. Don't put social insurance numbers, Social security numbers. Nothing sensitive goes in here because the entire world can see this. If you look at my brows right now, I'm incognito. I'm not logged in and I can see all this code perfectly fine. So there you go. If you want to go ahead, give this a shot. If you ever get stuck, feel free to just re watch his video. There's ton of support online for forget. And again, if you've ever got questions about something like this, go ahead. Throw it up in the learning to code Facebook group and ah would be happy to help.