🔸Repository
A repository is like a folder for your project. It contains the collection of the file as well as the history of the changes made to those files. Sometimes Github users shorten this as 'repo'
🔸Branch
A branch is a parallel version of a repository. It is contained within the repository but does not affect the primary or master branch allowing you to work freely without disrupting the 'live' version.
Also, you can merge your branch back into the master branch when you are ready to publish your changes.
🔸Master
The primary branch of all repositories. All committed and accepted changes should be on the master branch. You can work directly from the master branch, or create other branches.
🔸Checkout
The git checkout command is used to switch branches in a repository. git checkout master would drop you into the master branch.
🔸Commit
A commit or revision is like saving; an updated file to its original folder. It is used to record the changes in the repository.
🔸Push and pull
Push updates a remote branch with the commits made to the current branch. You are literally “pushing” your changes onto the remote.
While pull is used to receive data from Github.
🔸Merge
Taking the changes from one branch and adding them into another (traditionally master) branch. These commits are usually first requested via pull request before being merged by a project maintainer.
🔸Pull Request
If someone has changed code on a separate branch of a project and wants it to be reviewed to add to the master branch, that someone can put in a pull request.
Continued ↓
Pull requests ask the repo maintainers to review the commits made, and then, if acceptable, merge the changes upstream. A pull happens when adding the changes to the master branch.
🔸Clone
It is used to make a copy of the target repository or clone it, but you can't push changes to the original repo if you are not the project owner.
🔸Fork
A fork is a rough copy of another user's repository. Forking a repository allows you to freely test and debug with changes without affecting the original project.
📌Difference between fork and clone
This video explains it simply -
When you fork a repository, you create a copy of the original repository (upstream repository) but the repository remains on your GitHub account.
Whereas, when you clone a repository, the repository is copied onto your local machine with the help of Git.
🔸Cherry picking
Cherry-picking is the act of picking a commit from a branch and applying it to another.
🔸IP address -
IP stands for Internet Protocol Address. It is a numerical label assigned to each device connected to a computer network that uses Internet Protocol for communication.
The internet needs a way to differentiate between different computers, routers, and websites. IP addresses provide a way of doing so and form an essential part of how the internet works.
🔸JSON stands for JavaScript Object Notation.
🔸JSON is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute-value pairs and arrays.
🔸JSON is a language-independent data format. It was derived from Javascript, but many modern programming languages include code to generate and parse JSON-format data.
📌What is Version Control?
A version control system is like a save program for your project. By tracking and logging the changes you make to your file or file sets over time, a version control system gives you the power to review or even restore earlier versions.
🔸Git is a version control system that lets you manage and keep track of your source code history.
🔹GitHub is a cloud-based hosting service that lets you manage Git repositories.