DEV Community

Discussion on: How do you use GitHub?

Collapse
 
aurelkurtula profile image
aurel kurtula • Edited

There are two things for you to learn, Git and GitHub.

When I started, I couldn't see a point to github. I didn't have anything worthy to share. As a result I dismissed the power and usefulness of Git.

So, Git helps you keep track of your code. It gives you the power to go back and forth, like a tape cassette but with bookmarks! Very powerful. Especially for beginners that easily over-write their solutions.

Then, Github is just a place to keep your code. The "social" features can be learned by using it, but that's about it. A storage space to store your git repositories.

There are other websites like GitHub, GitLab for example. They all do the same thing. But the magic, the usefulness, comes from Git.

Edit - To make it clear, as I really think beginners should use git and in the spirit of #explainlikeimfive

You can use git and never GitHub or any such website.

You, the beginner are designing a website. You created everything but you wonder whether you should change the color pallet.

What do you do? You copy it and rename it, right? myDogSite-theme1, myDogSite-theme2. Now, with Git, it does all that for you, there are no copies of folders, nothing.

Think about it. You are going through a course, at the end of a lesson, the author says "next we are going to add X functionality". You think, "I believe I can do that without her telling me" (the best way to learn in my opinion)

If you have git, you tell git "hey, I'm going to try something I never tried before. Most likely I'll mess everything up - because I'm a beginner, please remember where we are right now and if I tell you to, take me back here". Like video game checkpoints (but you make the checkpoints - I hate that we can't do that in most games)

Maybe this extra information is an overkill, but I read few people over the years which say beginners do not need git, and I totally disagree. It's a safety net which allows you to be more adventurous, it gives you the freedom to edit the hell out of that library which otherwise is a black-box, knowing that you will not have to re-download it or duplicate it.

Finally, learn how to use git in terminal. For what we are talking about there might be only 5 lines of code you need to lear - you can stick them somewhere. With apps, I feel like you are having to manage all your projects