You are on page 1of 7

Git and Github Full Course

Part One: Introduction to Git


 Version Control System
 What is Git?
 Git installation & Setup
Part Two: How to use Github?
 What is Github and How to use it?
Part Three: Get Branching and Stashing
 Branching in Git
 How to handle Merge Conflicts?
 Git Stashing
Part Four: Get Merge & Rebase
 What is Git Rebase?
 What is Git Merge?
 Git Merge vs Git Rebase
Part Five: Git Commands
 Top Git Commands
Part Six: Jenkins Git Integration
 What is Jenkins
 Why Jenkins and Git are used together?
Part Seven: GitLab CI/CD Pipeline
 Introduction to CI/CD
 Introduction to Gitlab CI/CD
 Building a CI/Cd Pipeline using Gitlab
Part Eight: What is GitOps?
 What is GitOps & why do we need it?
 How does GitOps work?
Part Nine: Git Interview Questions
 Basicc Interview Questions
 Intermediate level interview questions
 Advanced interview questions
Part One: Introduction to Git

I. What is version control?

Allows a group of people that are working on a project to maintain a recorded registry of the
modification done. The changes are done and updated into the central directory. The current state
of the project will be visible to all the members.

Version control is a system that records changes to a file or set of files over time so that a
specific version can be recalled later. These versions are recorded in a repository and can be
recalled from the same. There are three types of Version Control Systems:

Local: All the changes are recorded in a local system

Centralized: A group of people can update changes in a shared centralized server

Distributed: Each one has their own copy and then collaborate with the rest by updating the
changes intro a centralized server.

Why to use Version Control?

 Collaboration: Allows to have a shared workplace and Real-time updates


 Manage Versions: All versions of code are preserved
 Rollbacks: Allows to rollback to an early version from the actual one
 Reduce Downtime: Reverse faulty update and save time
 Analyse Project

What is a Repositoy?

It is a directory or storage space where the projects are placed. The repository can be local if it is
only accessible in the user computer, or can be in another online host (such as Github).
II. What is Git?

Is a Distributed Version Control tool that supports distributed non-linear workflows by providing
data assurance for developing quality software. It lets you and your team of developers work
together on the same project from anywhere. Team members can work on files and easily merge
their changes into one source.

Features:

 Economical: Released under GPL’s License, it is free and open source


 Non-Linear: Supports non-linear development of software
 Snapshots: Record changes made to a file rather than the file itself
 Distributed: Every user has his own copy of the repository data stored locally.
 Speed: Speed offered by Git is lightening compared to another VCSs.
 Robustness: Nearly every task in Git is undo-able.
 Integrity: No changes can be made without Git recording it
 Branching: Every collaborator’s working directory is a branch itself
III. Git Operations and Commands

 Creating Repositories:
o git init: Creates a new Git repository
o git clone: Creates a copy of a repository on the local computer used
o git fork: When you fork a repository, you copy the original repository on your
Github account
 Making changes:
o status
o add
o commit
 Parallel Development
o branch
o merge
o rebase
 Syncing repositories
o origin: [ git remote add origin <repository_link> ] Allows to add a remote
repository
o push: [git pull origin master] Allows to copy all the files from the master branch
of remote repository to your local repository
o pull: [ git push origin master ] Allows to push your local changes into central
repository

You might also like