Day 8: Basic Git & GitHub for DevOps Engineers

What is Git?
Git is a version control system used for tracking changes to files and collaborating with others. It is commonly used in software development but can be used for any set of files.
Git is a version control system that tracks file changes, allowing you to revert back to earlier versions if needed. It also makes collaboration easy by merging changes into a single version of the file.
What is Github?
GitHub is a web-based platform that offers hosting for version control using Git. It is a subsidiary of Microsoft and provides all the distributed version control and source code management (SCM) functionality of Git, along with its own features. It is a very popular platform among developers to share and collaborate on projects and also for hosting open-source projects.
What is Version Control?
Version control is a system that tracks file changes over time. It allows you to revert files or the entire project back to a previous state, compare changes, and identify who made changes that caused a problem.
How many types of version controls we have?
There are two types of version control systems: centralized and distributed.
In a centralized version control system (CVCS), all versions of a project's files are stored on a central server. Developers can retrieve files from the central server by checking them out, making changes, and then checking them back in as updated files. Examples of CVCS include Subversion and Perforce.
A distributed version control system (DVCS) enables developers to clone an entire repository, along with the entire version history of the project. This allows them to have a complete local copy of the repository, including all branches and past versions. Developers can work independently and then merge their changes back into the main repository. Git, Mercurial, and Darcs are some examples of DVCS.
Why do we use distributed version control over centralized version control?
- Here are the main points about the advantages of a Distributed Version Control System (DVCS):
- Every developer has a full copy of the repository, including the entire history of all changes. This enables better collaboration.
- Developers can perform version control actions faster since they don't need to communicate with a central server.
- DVCS provides greater flexibility as developers can work offline and still commit changes later.
- The repository history is stored on multiple servers, making it more resistant to data loss and enhancing security.
The decentralized nature of a distributed version control system (DVCS) enables enhanced collaboration, flexibility, and security, which makes it a popular choice for many teams.
Happy Learning!
#90daysofdevops




