Hello reader!
If you are a programmer, you must have heard about Git and GitHub. This article will not contain any code, We will first get familiar with the interface I will try and explain to you the basics of theory and concepts in plain English to help you get started with Git. This is the 1st article in the Git and GitHub series.
Check out the Repository for Ultimate Resource in python. Drop a star if you find it useful! Got anything to add? Open a PR on the same!
ayushi7rawat / Ultimate-Python-Resource-Hub
The Ultimate resource hub of Python: All at one place
The Ultimate resource hub of Python: All at one place
Contributing
Please see CONTRIBUTING, CODE-OF-CONDUCT for details before you contribute.
Table of Contents
- Ultimate-Python-Resource-Hub
- Ultimate-Python-Resource-Hub
- Python Official Documentation
- Contributing
- Table of Contents
- Requirements
- Coding Practice Playground for Python
- Free Hosting Platforms for Python
- Python Books
- Python Community and Groups
- Python Courses-Video Tutorials
- Python Devs to Follow on Twitter
- Python Github Repositories
- Python IDEs
- Python Libraries for GUI Development:
- Python Frameworks for Web Development:
- Python Libraries for Game Development:
- Python Libraries for Data Science:
- Python Mobile Applications:
- Python Newsletters:
- Python Podcasts:
- Python Websites
- Python YouTube channels
- Technical Blogging Platforms
- Data Structures and Algorithms
- Connect with me
Requirements
Have Python 3.7 or newer installed. You can check the version by typing python3 --version
in your command line. You can download the latest Python version from here.
Coding Practice Playground for Python
You can refer to my YouTube video Tutorial to see a working tutorial for better understanding and a step-by-step guide of the same.
What will be covered in this Blog
1. What is Version Control System and its Types
2. What is Git?
3. What is GitHub?
4. And the difference between the two.
Let's get started!
What is Version Control System?
Before jumping in for git let’s understand what version control is.
- VCS or version control is a management system that tracks changes in a computer file.
- It is a software tool that records and manages changes to the source code over a period of time.
So imagine that you are working with your friend on a shared document and two of you are making changes in the file at the same time, what will happen? How will you track the change and mark the owner of the same? Or maybe you are working in a large team, how will you manage then?
- It helps developers to work efficiently.
Consider another scenario, If you are working on a project and modify or update your code on a regular basis and on one specific day, you wish to rollback and revert files back to a previous state or revert the entire project back to a previous state, compare changes over time, see who last modified something that might be causing a problem, who introduced an issue and when, and more, a version control system can do this for you.
Types of Version control
So basically there are three major types of VCS.
- Local Version Control Systems
- Centralized Version Control Systems
- Distributed Version Control Systems
We will not get into too much detail about this in this article.
What is Git?
There are various Version control system in the market but Git is one of the most popular amongst them.
- Git was originally developed in 2005 by the creator of Linux.
- Git is free and open-source software so, anyone can use it.
You cannot remember every change that you make, quite obvious, right? But what you can do is remember a simple command.
- Honestly, it has made our life easier as It keeps track of the entire history of things that you are working on and allows us to revert back to a previous version no matter how many times you have made changes to your file.
- It has simplified the process of working with other people and encourages collaboration among developers and makes working in a team really easy.
- Git widely used by various organizations, businesses, and even startups to manage their code, it lets you watch the entire timeline. We will study this in detail when we will learn how to set up, install and use GitHub in the next part of this series.
What is GitHub?
GitHub is one of the most advanced and developed hosting platforms for version control and collaboration. It is a web-based service for version control using Git has all the benefits of git and even more.
I have explained the look and feel and an overview of GitHub in the video. check it out for a detailed explanation.
Are Git and GitHub the same?
No, Git and GitHub are not the same.
Git is a version control system that lets you manage and keep track of your source code and history whereas GitHub is a cloud-based hosting service that lets you manage git repositories.
That’s Git and GitHub in a nutshell. Do you have a GitHub account? Share the link below. And with that, it's a wrap! I hope you found the article useful! Which one is your favorite Podcast? Share in comments below.
I create content about Career, Blogging, Programming, and Productivity, If this is something that interests you, please share the article with your friends and connections. You can also subscribe to my newsletter to get updates every time I write something!
Thank you for reading, If you have reached so far, please like the article, It will encourage me to write more such articles. Do share your valuable suggestions, I appreciate your honest feedback!
I would strongly recommend you to Check out the YouTube video of the same and don't forget to subscribe to my Channel. I would love to connect with you at Twitter | LinkedIn.
You should definitely check out my other Blogs:
- Python 3.9: All You need to know
- GitHub CLI 1.0: All you need to know
- How to make your own Google Chrome Extension
- Run Javascript from Python
- Automate WhatsApp using Python
- Automate Cowin Vaccine slots Availability using Python
- What is Competitive Programming
See you in my next Blog article, Take care!!
Top comments (4)
Hi Ayushi!
Thank you for sharing with us here. I've written a similar post that you can find here.
I don't know you, but it seems to me that it's a bad idea to have to compare "git" agianst "github". It's like comparing VSCode with JS or some other languages. What do you think ?
I also suggest using Grammarly and canva when working on your next post.
Thank you !
Agree with your point.
I'll share a personal anecdote to explain why sometimes such comparison is necessary. I had to take an informal workshop about Git & GitHub with college freshers. I spent about half an hour explaining what are commits, branches and why we need Git. Then I was asked a question - "When are we going to start the workshop?" I did a quick exchange with the students and got to know that they did not know about Git at all. They knew about GitHub only and were waiting for me to open GitHub on my browser and "start the workshop".
I think the there is a slight confusion among new coders because GitHub lets you do some basic stuff that you normally would do locally using Git. (making changes to file, adding files, deleting files etc)
While I do believe Git & GitHub need to go hand in hand, I have also started making the differences clear to anyone who seeks help from me.
Nice and simple explanation. Awesome work!
Hi Ayushi!
Thank you for sharing with us here. I've written a similar post that you can find here.