GitHub is a repository that utilizes version control to store your local information on their remote server. Thanks to this, you only need an internet connection to access your projects.
They're a bit of a headache to start, but they make your lives SO MUCH easier. They make your lives easier by facilitating version control and team collaboration.
What is Version Control?
A Version Control System (VCS) is software that tracks every change you make to any file. The great thing about version control is that it allows you to revert to how your code was at any (commit) point in history.
How to Use Version Control?
The most used version control software is called Git (the inspiration for the name GitHub!). While GitHub is not the only popular remote repository, here at CodingNomads, you love Git & GitHub, and you think you will too.
What is Git?
The Git website, says it best:
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
Git is easy to learn and has a tiny footprint with lightning fast performance. It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with features like cheap local branching, convenient staging areas, and multiple workflows.
https://git-scm.com/
What are the Main Features of Git
There are many features that Git provides, but for now, the basic features are all you will need to start doing some awesome version control!
Collaborate with Whoever
Git enhances your ability to collaborate with peers and anyone you'd like by simply sharing a URL. Imagine if you have 50 people all collaborating on a single essay in a single Google Doc. People would be writing all over each other, changing other people's work, mixing and messing everything up constantly. Git eliminates this problem. With Git, you push and pull your work to and from a shared repository (often a public or private repository on GitHub).
Before you can push any of your work to the shared repository - you must pull any and all other work that has already been pushed to the shared repository that does not exist in your local project. If there are any conflicts when you pull this new work from your peers, Git will force you to address and fix those conflicts before allowing you to push your work up to the shared repository.
Create Branches
Furthermore, Git allows us to create multiple working branches. Branches allow us to create a copy of the code as it is, branch off of it onto a new branch, and make whatever changes you want to that branch without affecting the original source code (the main branch). If and when you want to combine the work in your new branch with the code in the main branch, you can merge them. This allows us to be much more productive in working on any number of tasks without breaking the main branch while the new code is still in development.
Choose Files
Another feature is that when you add Git to your project, you can choose which files to track. This can be very useful in large projects where you only track and share the files required for the project instead of a test file or personal configuration file you've created.
Summary: What is GitHub?
- GitHub is a remote repository that uses Git (a version control software)
- GitHub tracks all the changes in your project's files
- GitHub is one of the most popular remote repositories for version control
- Version control allows you to track all changes in your files
- GitHub provides constant access to your projects (if you have an internet connection)
What is Git?
- By far the most popular version control system (VCS)
- Provides a system of collaboration and project management
- Allows developers to
branchandmergethe codebase - Tracks only files you select and indicate