DEV Community

Cover image for Guide to Git and GitHub - Part 1
Noopur Sharma
Noopur Sharma

Posted on

Guide to Git and GitHub - Part 1

Hello JuxtaCoders!

In my opinion, Git and GitHub are some of the most essential skills that every programmer must have. So, I am bringing this series where I share all the basics that you need to know to get comfortable with using Git and GitHub. I'll share some resources at the end to help you learn further.

In this part we'll get an introduction to what Git and GitHub are.

Imagine you and your team are working on an application. Someone does a change in the code and the application crashes. At this stage, you have a few options. Either someone in your team remembers what the code looked like before making the changes, or, someone had a copy of the previous version of the code in their system which they can share with the team, or, in the worst case, you have to start all over again. Now, this won’t be a huge issue if a few people are working on a small application. But imagine working on thousands of lines of code, with tens or even hundreds of people making changes (or contributing). Here, if the application fails, it’ll be almost impossible to find someone who remembers what the code looked like before crashing!

This is where Git comes in. Git is a distributed Version Control System. Basically, it helps us keep track of the history of all the changes that were made in the codebase with the help of some commands. Also, in projects where many people are working on the same code, Git helps everyone to make changes on their own and add these to the original codebase (merging), without affecting others’ progress.

Side note, a lot of people may confuse Git with a programming language, which it isn’t!

Now, using Git on its own can be complex for a lot of people. Not many people would want to learn how to set Git up in their system, its various commands and how to properly use them with your project, just to add a semicolon in your code (which is totally fair!). So, for a convenient user experience, there are many platforms that allow you to maintain your project in forms of repositories and collaborate with people from around the world. GitHub is one such platform. There are many more such platforms, like, BitBucket, GitLab, etc. But, GitHub is the most widely used. GitHub provides developers an efficient UI so that we can easily maintain our projects, contribute to other projects, or simply see how some of the widely used applications are built and maintained.

To use GitHub, you don't necessarily need to learn the Git commands, you just need to be familiar with some basic terms and how to operate GitHub. But regardless, it is always beneficial if you know Git too (in my opinion). So, that's everything we'll be focusing on in this series.

That's all for now!! I hope this was helpful. In the next part, I'll continue with how to set Git in your system, some important commands, etc.

If there are any suggestions, feel free to share:)

Until next time... Happy Coding!

Top comments (0)