Introduction. I have folder with files sitting quietly on my laptop, and the idea of turning it into a "real project" on github feels like a mountain. This week, i climbed that mountain and i want to walk you through exactly how i did. Git vs GitHub. Git is a tool that lives on my computer and its the thing that actually tracks the changes i make to my files GitHub is a website. Its where i can store a copy of that diary online so i can share it with other people, back it up or work on it from a different computer. Git does the tracking and GitHub does the hosting. Step 1: Creating the folder. Using Git Bash, i first create a folder called my-first-project . Git Bash is a command-line tool that allows users to interact with Git and perfom common computer tasks using commands. Git Bash folder commands ls -view the files and folders mkdir -create a new folder _cd _-Enter the folder cd .. -Go back one folder Step 1: Turning my local folder into a Git project To make Git start paying attention to _ my-first-project , i opened my terminal, navigate into the folder and run the commands above. Step 2: Setting up SSH so GitHub actually trusts me. This part is what made me feel like a real developer for the first time. Think of SSH key like a digital handshake. My computer has one half of the key and GitHub has the other half key and they recognize each other without me typing password every single time. Here's how i set mine up: Generate the key on my machine I use the command-line ssh-keygen -T ed25519 -C " sshihande@gmail.com " on Git Bash. This creates two files, a private key and a public key. Copy the public key: I use the command-line cat_which is used to copy the public key. To print the public key in my terminal i use the run: _ cat ~/.ssh/id_ed25519.pub Add it to GitHub: I logged into GitHub and pasted it in. Tested the connection: I ran _ ssh -T git@github.com _to test the connection. The first time it warned me about connecting to a new host and asked me if i wanted to continue, i typed yes Step 3: creating the Repository on GitHub On GitHub i clicked new repository, gave it the same name as my local folder and this part matters. Step 4: Connecting my local folder to that repository I think of origin as just a nickname Git uses to refer to that GitHub repository so i dont have totype the full url every time. Step 5: The actual workflow. Staging, committing and pushing. This is the part of Git that took me a while to really get, so let me break iTt down the way i finally understood it. Working directory -This is just my folder as it exists right now, with all my raw changes, Git sees that something changed but hasn't been told to care about it yet. Staging Area -This is like a waiting room. I choose exactly which changes i want to include in my next save point. I do this with Git Bash. Commit -This is the actual save point in the projects history. I learnt that a commit message should actually describe what changed. Push -This is where my local commit atually travels up to GitHub. What i actually learnt from doing all this. If you are about to do this for the first time dont rush past the ssh set-up.It was intimidating at first bur i ended up enjoying .