Cademy logoCademy Marketplace

Course Images

Git and GitHub Masterclass - Fast-Track Your Journey to Git

Git and GitHub Masterclass - Fast-Track Your Journey to Git

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 9 hours 15 minutes

  • All levels

Description

GitHub is one of the most important code hosting platforms. This hands-on course will help you to understand the concepts with real-world scenarios and use cases. This course will help you become a better developer. No prior coding experience is needed to take up this course, just dedication and commitment to learning.

Git is a Version Control System, whereas GitHub is a centralized repository to host the code, to enable team collaboration. In this course, you will learn about Git and GitHub and all the concepts pertaining to them. It will also cover the use cases and workflows that you need to know as a developer. In this hands-on course, you will start by understanding the need for a Version Control System and how Git operates and will learn how to install Git on your local systems. You will dive deep into Git by understanding the SHA1 Hashing algorithm, blob objects, Git internals, and Git Snapshot. You will explore everything about branches, merging, and three-way mergers in action and learn to perform rebase in VS code. You will also learn about stashing and its use cases and learn to retrieve a specific stash. Later, you will learn to collaborate effectively using GitHub. Concepts such as commits in GitHub, the README.md file, cloning a private repository, and adding project collaborators on GitHub will be covered. You will also explore how to create a remote branch and push changes using Git Bash and VSCode and learn to resolve conflicts on GitHub the right way. It goes on to cover Git fetch and understand its use cases and understand Git pull with the three-way merge. Branching strategy with a real-time scenario will be explained as well. By the end of the course, you will be able to fork the public repository and clone it to your local machine and learn about digital signatures as well as signed commits. All resources and code files are placed here: https://github.com/PacktPublishing/Git-and-GitHub-Masterclass-Fast-Track-Your-Journey-to-Git

What You Will Learn

Understand the need for version control, Git, and branches in Git
Understand the SHA1 Hashing algorithm
Clone a private repository and add project collaborators on GitHub
Learn to create a remote branch and push changes using Git Bash
Learn to sync the forked repository with the original from the local repository
Learn to make signed commits and verify them on GitHub

Audience

This course can be taken by people who are getting started with their developer journey. Managers/team leads who lead a project or someone who wants to get started with their DevOps journey can opt for this course. Passionate learners who want to upgrade their skills for better job prospects can take up this Git and GitHub masterclass course.

No prior programming knowledge is needed to take up this course.

Approach

This is a well-structured, hands-on, and comprehensive course for beginners. Real-time scenarios and use cases are explained, which will come in handy in the future. In this course, you will also learn how to contribute to open-source projects and build your online presence to build credibility.

Key Features

Master the basic Git concepts * Collaborate and manage projects on GitHub * Contribute to open-source projects

Github Repo

https://github.com/PacktPublishing/Git-and-GitHub-Masterclass-Fast-Track-Your-Journey-to-Git

About the Author

Karthikeya T.

Teaching is an art in Karthikeya T.'s opinion. He believes it's the responsibility of the instructor to make sure that the student understands the concepts. He doesn't want to promote his decade and a half of experience in the industry. All his experience means nothing to him if he fails to teach his students in the way they understand. His primary focus is to teach the technology and ease our journey to a successful life.

Course Outline

1. Introduction to Git

1. Introduction

In this video, the author explains the need for GitHub and Git.

2. Need for Version Control System and Git Part 1

This video explains the need for a version control system by taking a real-world scenario.

3. Need for Version Control System and Git Part 2

This video explains how a version control system helps manage the changes, creates a backup, and tracks historical changes.

4. VCS - How It Works

This video explains the working of a version control system software at a high level.

5. Distributed VCS

This video explains the concept of the distributed version control system and its benefits.

6. Installing Git

This video explains the installation of Git on Windows.

7. Git CLI Versus Git Bash Versus Git GUI

This video explains how to interact with Git, which is through Git CLI, Git Bash, and Git GUI.

8. Basic Bash Commands

This video explains the basic bash commands such as mkdir, cd, pwd to name a few.

9. What Exactly Is Git Commit

This video explains Git commit using an example.

10. Initializing the Project and Exploring the .git Folder

This video explains how to initialize the project and explore the .git folder.

11. Configuring Git Credentials and Exploring Local Global System Configs

This video explains how to configure Git credentials and learn its actual purpose.

12. Staging and Unstaging and Checking Status

This video explains staging and unstaging the files inside the Git repository.

13. Understanding Commit with Multiple Use Cases

This video explains committing the changes to Git repository.


2. Git Deep Dive

1. SHA1 Hashing Algorithm

This video explains the SHA1 hashing algorithm.

2. Git Internals (All about Object Database) Part 1

This video explains git internals and all about object database.

3. Git Internals (All about Object Database) Part 2

This video explains how Git stores the data inside an object database.

4. Git Internals - Viewing and Reading Git Objects

This video explains viewing and reading Git objects.

5. How Blob Objects Behave

This video explains the behavior of blob objects.

6. Garbage Collection and Pack Files

This video explains garbage collection and pack files.

7. Git Snapshot - What It Means to Take a Snapshot

This video explains the Git snapshot.

8. Time Travel with Git

This video explains time travel with git.

9. Time Travel in Practice

This video explains time travel with Git using an example.


3. All About Branches

1. Life without Branches

This video explains the life of Git even before branches existed.

2. What Are Git Branches

This video explains what Git branches are.

3. How Branches Solved Our Problems

This video explains how Git branches solved the problem.

4. How Git Branches Work and What Exactly Is a Branch

This video explains how Git branches work and what exactly is a branch.

5. Branches in Action (Creating Branches and Exploring the Git Repo)

This video explains creating a branch and exploring the Git repository.

6. Understanding 'HEAD' - Detached Head State - Head in Action

This video explains Head in Git and Head in action.

7. Undo the Changes with Git Reset HEAD

This video explains how to undo the changes with Git reset HEAD.

8. Retrieving the Lost Mystery with reflog

This video explains how to retrieve the lost mystery with reflog.


4. Merging

1. Fast-Forward Merge

This video explains fast-forward merge.

2. Fast-Forward Merge in Action

This video explains fast-forward merge in action.

3. Deleting the Branch and Recovering

This video explains how to delete the branch and recover the branch.

4. Understanding Three-Way Merge and Merge Commit

This video explains the three-way merge and merge commit.

5. Three-Way Merge in Action

This video explains three-way merge in action.

6. Understanding Merge Conflicts

This video explains merge conflicts.

7. Merge Conflicts in Action Part 1

This video explains merge conflicts in action where you will see a scenario in which you will create a conflict.

8. Merge Conflicts in Action Part 2

This video explains how to resolve conflicts to be able to merge the branches.

9. Installing and Setting Up Visual Studio Code to Work on Git

This video explains the installation of Visual Studio Code to work on Git.

10. Exploring VS Code and Performing GIT Operations

This video explains VS code and performing GIT operations.


5. Rebasing

1. Git Rebase Versus Merge

This video explains the difference between Git rebase vs Merge.

2. Performing Rebase in VS Code and Handling conflicts

This video explains how to perform rebase in VS code and handle conflicts.

3. Git Rebase in Git Bash - Skipping Conflicts and Aborting the Rebase

This video explains skipping conflicts and aborting the rebase.

4. Git Interactive Rebase

This video explains the Git interactive rebase.

5. Rebase to a Specific Commit or to Another Feature Branch

This video explains rebase to a specific commit or to another feature branch.

6. When to Use Rebase and When to Use Merge - Use Cases

This video explains use cases of when to use rebase and when to use merge.


6. Stashing

1. What Is Stashing - Its Use Cases - Example of Stashing

This video explains stashing and its use cases.

2. Applying the Stash Across Multiple Branches

This video explains how to apply the stash across multiple branches.

3. Retrieving a Specific Stash - Listing Stashes - Handling Conflicts

This video explains listing stashes and how to handle conflicts.

4. Stashing Selective Changes and Retrieving Them - Understanding Hunk

This video explains selective stashing changes and how to retrieve them.

5. Exploring Stashing in VS Code - Deleting a Stash

This video explains how to delete a stash.


7. Git Ignore

1. Git Ignore and Its Significance

This video explains Git ignore and its significance.

2. Git Ignore in Action - Global Exclude Config

This video explains Git Ignore in action.

3. Precedence Order - Overriding - Pattern Debugging

This video explains precedence order and pattern debugging.

4. Ignore Files That Were Already Committed

This video explains how to ignore files that were already committed.

5. Generating the Ignore Files for Your Project

This video explains how to generate the Ignore files for your project.


8. Getting Started with GitHub

1. Why GitHub - GitHub Versus Bit Bucket Versus GitLab

This video explains the difference between GitHub, Bit Bucket, and GitLab.

2. Creating GitHub Account

This video explains how to create a GitHub account.

3. Creating and Understanding Public and Private Repositories in GitHub

This video explains public and private repositories on GitHub.

4. Making Commits in GitHub and Understanding ReadMe File

This video explains making commits in GitHub and understanding the ReadMe file.

5. Creating Branch and Committing Changes - Managing Branches in GitHub

This video explains how to manage branches in GitHub.


9. Getting Started as Collaborator

1. Cloning a Public Repo and Exploring Other Options

This video explains how to clone a public repo and explores other options.

2. Cloning a Private Repository and Adding Project Collaborators on GitHub

This video explains how to clone a private repository and add project collaborators on GitHub.

3. Understanding Tracking Branches and Default Branch

This video explains tracking branches and default branch.

4. Making Exploring Tracking Branches - Configuring Default Branch - Understanding Origin-Head

This video explains understanding origin head.

5. Understanding Origin Remote - Adding, Editing, Deleting Remotes

This video explains how to add, edit, and delete the remote repository.


10. Git Fetch

1. Understand Git Fetch and Its Use Cases

This video explains Git fetch and its use cases.

2. Git Fetch in Action Part 1 (Command Variations - Checking Status with Commands)

This video explains checking the status with commands.

3. Git Fetch in Action Part 2 (Exploring References - FETCH_HEAD)

This video explains exploring references.

4. Switching to Remote Repo State

This video explains how to switch to a remote repository state.

5. Merging the Changes - Using FETCH_HEAD

This video explains merging the changes using Fetch Head.

6. Using Visual Studio Code to Fetch and Merge

This video explains using Visual Studio Code to fetch and merge.

7. Updating Local References with Git Fetch

This video explains how to update local references with Git fetch.


11. Git Pull

1. Understanding Git Pull

This video explains understanding Git Pull.

2. Git Pull in Action and Observing What It Does

This video explains Git Pull in action and observing what it does.

3. Understanding Git Pull with Three-Way Merge

This video explains Git Pull with three-way merge.

4. Git Pull with Rebase and Its Implications

This video explains Git Pull with rebase and its implications.

5. Dealing with Conflicts with Git Pull -Rebase

This video explains how to deal with conflicts using Git Pull rebase.

6. Using Stashing and Hard reset

This video explains how to use stashing and hard reset.


12. Git Push - Contributing to a Remote Repository

1. Setting Up Everything for Contributing - Adding Collaborators - Setting Credentials and Making Commits

This video explains setting credentials and making commits to a remote repository.

2. Creating a Remote Branch and Pushing Changes Using Git Bash and VSCode - Pushing to All Branches and VSCode - Pushing to All Branches

This video explains creating a remote branch and pushing changes using Git Bash.

3. Understanding Pull Request - Raising a Pull Request

This video explains how to raise a Pull request.

4. Understanding Protected Branches - Applying Branch Protection Rule - Mandating Code Reviews

This video explains applying the branch protection rule - mandating code reviews.

5. Reviewing and Approving the Changes - Working on Review Comments and Publishing New Changes

This video explains working on review comments and publishing new changes.

6. Exploring the Merging Options - Understanding Squashing Commits - Deleting Remote Branch from the Local Machine

This video explains deleting remote branches from local machine.

7. What Git Pull Actually Does

This video explains what Git Pull does.

8. Resolving Conflicts on GitHub the Right Way - Force Pushing Changes and Its Consequences

This video explains resolving conflicts on GitHub the right way - force pushing changes and their consequences.

9. Divide and Conquer Strategy

This video explains the divide and conquer strategy.

10. Resolving Conflicts by Merging Main into the Feature Branch

This video explains resolving conflicts by merging the main into the feature branch.


13. Forking and Contributing to Opensource Repositories

1. What Is Forking and Why Forking

This video explains forking and why forking is necessary.

2. Forking a Public Repository and Cloning It in Our Local Machine

This video explains forking a public repository and cloning it in our local machine.

3. Contributing the Necessary Changes

This video explains contributing the necessary changes.

4. Syncing the Forked Repository with the Original One and Updating the Local

This video explains syncing the forked repository with the original one and updating the local.

5. Syncing the Forked repo with the original from the local repo

This video explains syncing the forked repo with the original from the local repo.

6. Pushing Our Changes to the Forked Repo

This video explains pushing the changes to the forked repo.

7. Raising the Pull Request and Merging the Changes in the Upstream Repository

This video explains raising the pull request and merging the changes in the upstream repository.

8. Exploring Existing Public Project

This video explains exploring the existing public project.


14. Branching Strategy and Tags

1. Branching Strategy Explained

This video explains the branching strategy.

2. Branching Strategy with Realtime Scenario

This video explains the branching strategy with a real-time scenario.

3. Semantic Versioning Explained

This video explains semantic versioning.

4. Understanding Git Tags

This video explains Git tags.

5. Branching Workflow in Action

This video explains branching workflow in action.

6. Hot Fix Workflow in Action

This video explains the hot fix workflow in actions.

7. Creating Tags - Annotated Versus Lightweight Tags - Pushing Tags to Remote

This video explains pushing tags to remote.

8. Understanding How Tags Are Stored - The Detached Head State with Tags

This video explains the detached head state with tags.

9. Releases and Creating Tags on GitHub

This video explains releases and creating tags on GitHub.


15. Branching Protection Rules

1. Dismiss Stale Pull Request Approvals for New Commits

This video explains dismissing stale pull request approvals for new commits.

2. Configuring Code Owners with Patterns - Automatic Review Request

This video explains the automatic review request.

3. Mandating Conversation Resolution before Merging

This video explains mandating conversation resolution before merging.

4. Exploring All Other Branch Protection Rules

This video explains exploring all other branch protection rules.


16. Digital Signatures and Verified Commits

1. Mimicking the Commits and the Need to Have Verified Commit

This video explains mimicking the commits and the need to have verified commits.

2. Understanding Digital Signatures

This video explains digital signatures.

3. Understanding Signed Commits

This video explains understanding signed commits.

4. Creating Public and Private Keys Using GPG

This video explains how to create public and private keys using GPG.

5. Exporting Public Key and Updating GPG Key on GitHub

This video explains exporting public key and updating GPG key on GitHub.

6. Making Signed Commit - Setting Global Config - Verifying Signed Commits on GitHub

This video explains setting global config - verifying signed commits on GitHub.

7. Mandating Signed Commits - Signing Commits from VS Code

This video explains signing commits from VS code.

Course Content

  1. Git and GitHub Masterclass - Fast-Track Your Journey to Git

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews