GitHub Explained: A Simple Overview
Day 35 of 60 : Learn Full Stack Web Development with Github introduction.
What is GitHub?
GitHub is a Git repository hosting service.
GitHub also facilitates with many of its features, such as access control and collaboration.
It provides a Web-based graphical interface.
GitHub is an American company.
It hosts source code of your project in the form of different programming languages and keeps track of the various changes made by programmers.
It offers both distributed version control and source code management (SCM) functionality of Git.
It also facilitates with some collaboration features such as bug tracking, feature requests, task management for every project.
Features of GitHub:
GitHub is a place where programmers and designers work together. They collaborate, contribute, and fix bugs together. It hosts plenty of open source projects and codes of various programming languages.
Some of its significant features are as follows.
Collaboration
Integrated issue and bug tracking
Graphical representation of branches
Git repositories hosting
Project management
Team management
Code hosting
Track and assign tasks
Conversations
Wikisc
Benefits of GitHub :
GitHub can be separated as the Git and the Hub. GitHub service includes access controls as well as collaboration features like task management, repository hosting, and team management.
The key benefits of GitHub are as follows.
It is easy to contribute to open source projects via GitHub.
It helps to create an excellent document.
You can attract recruiter by showing off your work. If you have a profile on GitHub, you will have a higher chance of being recruited.
It allows your work to get out there in front of the public.
You can track changes in your code across versions.
So How Do You Get Started With GitHub?
It’s easy to get things going with GitHub. For starters, click onto the GitHub site and create an account. Then, consider installing Git on your system, especially if you plan on using your local computer. Then, go to your terminal and make yourself known to Git by setting up your user name in every repository.
Use this command:
git config --global user.name "<your_name_here>"
Make sure the “your name here” parameter is your own name. Pick any name you’d like.
Next, share your email address with Git. It should be the same address you entered when you joined GitHub.
git config --global user.email "<your_email@email.com\>"
You’re now ready to use Git!
How Do You Use Git and GitHub?
Here’s a very broad overview of the steps you need to use both Git and GitHub.
Create your GitHub account, which you should have already done, thanks to the previous section!
Create a repository or “repo” for short. This is where you store your code.
Build a file.
Make a commit. Whenever you create a file or change it, you create a Git commit to store the new version.
Connect your repo with your computer system.
Difference between git and gitHub
Programming language wordings are very intuitive these days. By hearing the name of a particular language, we start imagining what all it will be.Java and Javascript are very similar to the names ham and hamster, the logo of python is intertwined with the image of snakes.
So, someone looking at git and github would find any apparent connection between them. Let us see git and github in detail with the differences between them.
Git | GitHub |
Git is software. | It is a service. |
Linux maintains Git. | Microsoft maintains GitHub. |
It is a command-line tool. | It is a graphical user interface. |
You can install it locally on the system. | It is hosted on the web. It is exclusively cloud-based. |
It is a VCS to manage source code history. | It is a hosting service for Git repositories. |
It focuses on code sharing and version control. | It focuses on centralized source code hosting. |
It lacks a user management feature. | It has a built-in user management feature. |
Git was launched in 2005. | GitHub was released in 2008. |
Git has minimum external tool configuration. | It has an active marketplace for tool integration. |
It is open-source licensed. | It has a free-tier and pay-for-use tier. |
Its desktop interface is named Git Gui. | Its desktop interface is named GitHub Desktop. |
Understanding GitHub vs GitLab
GitHub | GitLab |
It is not open source. | It is open-source for the community edition. |
GitHub is written in Ruby. | GitLab is written in Go, Ruby, and Vue.jst. |
Users can have an unlimited free repository. | Users can make a public repository. |
It was launched in 2008. | It was launched in 2011. |
It grants users a free private repository but with three collaborators only. | It also provides a free private repository. |
It has an easy-to-use, intuitive UI. | Its UI is more convenient than GitHub’s. |
It allows users to navigate usability. | GitLab provides the navigation into the repository feature. |
It is the more popular of the two. | It is less popular than GitHub. |
GitHub lacks this feature, but users can check the commit history. | Users can see project development charts. |
The Microsoft Corporation owns GitHub. | GitLab Inc. owns GitLab. |
It is less secure than GitLab as a security Dashboard, and License Compliance is absent. | It is more secure. |
GitHub does not allow the addition of other types of attachments. | Users can add other types of attachments in GitLab. |
Understanding Git vs SVN
Git | SVN |
It's a distributed version control system. | It's a Centralized version control system |
Git is an SCM (source code management). | SVN is revision control. |
Git has a cloned repository. | SVN does not have a cloned repository. |
The Git branches are familiar to work. The Git system helps in merging the files quickly and also assist in finding the unmerged ones. | The SVN branches are a folder which exists in the repository. Some special commands are required For merging the branches. |
Git does not have a Global revision number. | SVN has a Global revision number. |
Git has cryptographically hashed contents that protect the contents from repository corruption taking place due to network issues or disk failures. | SVN does not have any cryptographically hashed contents. |
Git stored content as metadata. | SVN stores content as files. |
Git has more content protection than SVN. | SVN's content is less secure than Git. |
Linus Torvalds developed git for Linux kernel. | CollabNet, Inc developed SVN. |
Git is distributed under GNU (General public license). | SVN is distributed under the open-source license. |
Understanding Git vs Mercurial
Git | Mercurial |
Git is a little bit of complex than Mercurial. | Mercurial is simpler than Git. |
No VCS are entirely secured, but Git offers many functions to enhance safety. | Mercurial may be safer for fresher. It has more security features. |
Git has a powerful and effective branching model. Branching in Git is better than Branching in Mercurial. | Branching in Mercurial doesn't refer the same meaning as in Git. |
Git supports the staging area, which is known as the index file. | There is no index or staging area before the commit in Mercurial. |
The most significant benefit with Git is that it has become an industry-standard, which means more developers are familiar with it. | Mercurial's significant benefit is that it's easy to learn and use, which is useful for less-technical content contributors. |
Git needs periodic maintenance for repositories. | It does not require any maintenance. |
It holds Linux heritage. | It is python based. |
Git is slightly slower than Mercurial. | It is faster than Git. |
Git supports the unlimited number of parents. | Mercurial allows only two parents. |
What Next ?
What is Version Control System