GitHub: What and how does it work?
If you’ve been working on software / web development or any of these types of projects, you’ve probably heard of Git and GitHub many times. And if you’ve been a software / web developer yourself or have been actively involved in such projects, you already know what Git and GitHub are and why they are needed. In that case you can skip this post. And for those who don’t know, if you are interested in learning more about this platform, keep reading.
- What is a data breach? How can data be breached?
- Camcorder-Video Camera | How do the eyes fool the brain?
- What is ISP? What is the job of an internet service provider?
- Microsoft HoloLens | The dream is now real!
- Two-step verification! what, why, and how?
- What are Surface Web, Deep Web, and Dark Web?
- What to do if your smartphone falls into the water?
- What is AMOLED Technology? Details about AMOLED Technology!
What is Git?
GitHub is a platform created by developers, for developers, and for the purpose of simplifying the development process. But to fully understand the GitHub platform, you first need to know about Git. Git is a version control system for open-source software that makes the work of all the developers contributing to that project much easier. This version control system was introduced by software engineer Linus Torvalds, better known as the founder of the Linux operating system.
But what is the version control system? When a developer creates an open-source software or any project, they constantly change the source code of their project. The source code needs to be changed constantly to fix any bugs in the project, or to add new features. Even after the official release of the project, the source code needs to be changed to release a new version.
The version control system simplifies the process of changing this source code and revising the previous source code. The version control system basically keeps every modification of the source code in a central repository and creates a new development branch as needed for each modification. As a result, when all the other developers working on that project get involved in the development of the project, they can understand a roadmap of the whole project and work accordingly.
Developers can easily access different source codes for all versions from the beginning to the end of their project, test and upload revised source code by modifying them as they wish. All developers working on the project can view, download, revise and easily communicate with each other about the modifications made by other developers working on the project due to the version control system.
Similarly, ordinary people like you / me who have nothing to do with the development of this project, we can access this project using this version-control system if we want or use it for our own needs (if the project is open-source). Those of you who use Linux are familiar with this system.
However, normal users do not install software on Linux in this way. Installing apps on Linux using the version control system is basically the job of Linux geeks. However, Git is not the only version control system. There are many more versions of such control systems, but the most popular of these are the Git developers and the most-used.
What is GitHub?
After Git, let’s find out what the GitHub thing is. GitHub is the same thing, but the difference is that Git is a complete command line based system, which we call the CLI interface. However, the name GitHub is best known to us. GitHub basically showcases all the features of this Git in a beautiful organized web interface.
Not only are GitHub’s core features, GitHub has many more features besides a graphical user interface for developers’ version control, which has turned GitHub into not only a version-controller tool but also a social network for developers. GitHub, now a platform owned by tech giant Microsoft, is considered a haven for open-source developers.
You may have heard this name many times. It is often shortened to GitHub Ripo. This is also the most popular feature of GitHub. The GitHub repository of a particular GitHub project is where all the necessary source files of all the development branches and all the versions of a GitHub project are stored separately. Basically, the source files of open-source projects are saved in a public GitHub repository so that any Internet user can download and use the files.
There is also a private GitHub repository. However, the source code of the closed software in these repositories is used by the employees of the software company for collaboration among themselves. However, GitHub Repo is the most popular repository of open-source software.
When you create another new project based on an existing project in GitHub, if the repository of the previous project already exists in GitHub, your new project is called Repository Forking. If you find a repository on GitHub that you like very much and you want to contribute to it, you can download the old repository and modify it as you wish and release it as a new repository. Once your forked repository is updated, you can easily apply them to your project.
Most GitHub open source projects are always open for contributions. If you fork a repository and think you have added some great new features, you may want the original developers of that project to know about you or think about including new things you have created in their original project. In that case, by placing a pool request, you can officially communicate with the original developers of your forked project about the new things you have created and adding them to the original project.
There are many more features in GitHub that can be discussed all day long. However, I have only discussed these 3 main features, as I think it is enough for a non-developer or normal internet user to know enough about GitHub.
Is GitHub only for developers?
By now, you might think that GitHub is only for developers. If you are not a developer you will never need GitHub. Yes, you may not need this platform as much as a developer would need, but you can use GitHub for many other purposes besides just a development purpose. If you have a team who are constantly working on a project and updating the project files. Maybe it’s a Word document work, or a PowerPoint presentation, or an Excel spreadsheet. You can also use GitHub to control any version of this type of project, if you wish!
So, this was the basic idea of Git and GitHub. Hopefully, if you haven’t had any ideas about GitHub before, you’ve got some basic ideas from this post. So far as today. If you have any questions or comments, please let us know in the comments section.