Learn Git And Github - Fasttrack Your Journey To Git!
Published 2/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 3.86 GB | Duration: 9h 52m
Published 2/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 3.86 GB | Duration: 9h 52m
Learn complete Git and GitHub - The most In-demand IT Skill
What you'll learn
Master Git and GitHub for your new Job role
Kick start your DevOps Journey with Git
Understand how to manage team projects on GitHub
Learn how to contribute to Open Source Projects & increase your profile credibility
Learn the best practices & avoid typical mistakes
Actively involve team
Confidently answer tricky interview questions related to Git and GitHub
Learn end-to-end Git and GitHub
Requirements
You will learn everything you need to know about Git and GitHub
Commitment and dedication to learn GitHub in it's entirety
You need a laptop or a computer to practice what is taught in the course
Description
Git is a Version Control System, where as GitHub is a centralized repository to host the code and enable team collaboration.In this course, you will learn about Git and GitHub and all the concepts pertaining to them. This course also talks about the use cases and workflows that you need to know as a developer.You will not only understand the core part of Git and GitHub and how it works under the hood, but we will also explore a host of concepts that are crucial for you to understand before you start contributing to Git projects.Who can take this course? Individuals seeking to advance their careers in IT or enter a new job role where knowledge of git and github is required.People who are getting started with their software developer journeyManagers or team leads who lead a projectPeople who want to get started with their DevOps journeyPassionate learners who want to upgrade their skills for better job prospectsIn this course, you will also learn how to contribute to open source projects and build your online presence or credibility.This course will teach you everything you need to know about Git and GitHub, and you don't have to refer to any other sources.This course comes with a 30 day refund policy. If you didn't like the course for whatever reason, you can ask for a full refund.Few reasons to learn Git and GitHub:GitHub has over 100 million repositories (source: GitHub).Over 72 million developers from around the world use GitHub (source: GitHub).GitHub is home to over 40 million registered users (source: GitHub).The most popular programming languages on GitHub are JavaScript, Python, Java, TypeScript, and Ruby (source: GitHub).Over 31 million GitHub repositories are public (source: GitHub).The most popular license for GitHub repositories is the MIT License, followed by the GNU General Public License (source: GitHub).Microsoft acquired GitHub in 2018 for $7.5 billion (source: The Verge).These statistics demonstrate the popularity and widespread use of GitHub among developers and the programming community.What is GitHub?GitHub is a web-based platform for software developers to store and share their code with others. It provides version control through Git, which allows developers to keep track of changes to their code, collaborate with others, and easily roll back to previous versions if needed. GitHub also offers a range of features, such as issue tracking, project management tools, and code review capabilities, to help teams work together more effectively. It has become a popular platform for open-source software development and hosts millions of projects, ranging from small personal projects to large enterprise software.Why GitHub is used for software development:Version Control: GitHub uses Git, which is a powerful and widely used version control system. It allows developers to keep track of changes to their code and collaborate with others, ensuring that everyone is working on the same version of the code.Collaboration: GitHub provides a platform for developers to work together on projects, whether they are in the same office or on opposite sides of the world. Teams can easily share code, review changes, and collaborate on new features.Community: GitHub is a hub for open source projects, providing a platform for developers to contribute to projects created by others. This fosters a community of developers who can share knowledge and collaborate on projects.Code Review: GitHub provides tools for code review, allowing team members to easily review and comment on each other's code. This helps ensure that code is of high quality and meets the project's requirements.Project Management: GitHub provides tools for project management, including issue tracking and milestones. This allows teams to keep track of project progress, identify and prioritize issues, and set goals for the project.Integration: GitHub can be integrated with many other tools and services, such as continuous integration and deployment (CI/CD) tools, which help automate the development process and ensure that code is deployed to production environments quickly and efficiently.High-level overview of what you will learn:Git: Git is a popular version control system that allows you to track changes to code and collaborate with others. Understanding how Git works and how to use it is essential for working with GitHub.Repositories: A repository is a central location for your code. You can create a new repository on GitHub, and then upload your code to it. Repositories can be either public or private, and they can be used to collaborate with others or manage your own projects.Branches: Branches are used in Git to isolate changes to code and work on new features or fixes. Understanding how to create and manage branches is important for working with Git and GitHub.Pull Requests: Pull requests are a way to propose changes to code and collaborate with others. They allow you to submit changes to a repository and have them reviewed by others before they are merged into the main codebase.Issues: Issues are used to track bugs, feature requests, and other tasks. They can be used to manage projects and prioritize work, and they can be assigned to specific users to ensure that work is distributed effectively.Collaborating with others: GitHub provides a range of tools for collaborating with others, including pull requests, code reviews, and issue tracking. Understanding how to use these tools is essential for working with others and ensuring that code is of high quality.Project management: GitHub provides tools for project management, including issue tracking and milestones. Understanding how to use these tools can help you manage your own projects more effectively, as well as contribute to larger projects that use GitHub for project management.This is only a high level overview. Below are the topics covered in this course (By the time of this writing)Section 1:IntroductionNeed For Version Control System and Git Part 1Need For Version Control System and Git Part 2VCS-How it worksDistributed VCSInstalling GitGit CLI vs Git Bash vs Git GUIBasic Bash CommandsWhat exactly is Git CommitInitializing the project and Exploring dot git folderConfiguring Git Credentials and exploring local global system configsStaging and Unstaging and checking statusUnderstanding Commit with multiple use casesSection 2:Git Deep DiveSha1 Hashing AlgorithmGit Internals (All about Object Database) Part 1Git Internals (All about Object Database) Part 2Git Internals - Viewing and reading Git ObjectsHow Blob Objects BehaveGarbage Collection and Pack FilesGit Snapshot - What it means to take a snapshotTime travel with GitTime Travel in PracticeSection 3:Git BranchesLife without BranchesWhat are Git BranchesHow Branches Solved our ProblemsHow Git Branches Work and What Exactly is a BranchBranches in Action (Creating Branches and exploring the git repo)Understanding 'HEAD' - Detached Head State - Head in Action.Undo the changes with Git Reset HEADRetrieving the lost mystery with reflogSection 4:MergingFast-Forward MergeFast-Forward Merge In ActionDeleting the branch and recoveringUnderstanding Three Way Merge and Merge CommitThree Way Merge in ActionUnderstanding Merge ConflictsMerge Conflicts in Action Part 1Merge Conflicts in Action Part 2Installing and setting up Visual Studio Code to work on GitExploring VS Code and performing GIT OperationsSection 5:Git RebaseGit Rebase vs MergePerforming Rebase in VS Code & Handling conflictsGit Rebase in Git Bash - Skipping conflicts and Aborting the RebaseGit Interactive RebaseRebase to specific commit or to another feature branchWhen to use rebase and when to use Merge - use casesSection 6:StashingWhat is Stashing - It's use cases - Example of StashingApplying the stash across multiple branchesRetrieving a specific stash - Listing stashes - Handling conflictsStashing Selective Changes and retrieving them - Understanding HunkExploring stashing in VS Code - Deleting a stashSection 7:Git IgnoreGit Ignore and it's significance (Crash course)Git Ignore in action - Global exclude configPrecedence order - overriding - Pattern debuggingIgnore files that were already committedGenerating the Ignore files for your projectSection 8:Git HubWhy GitHub - GitHub vs Bit Bucket vs GitLabCreating GitHub AccountCreating and understanding Public and Private repositories in GitHubMaking Commits in GitHub and Understanding ReadMe fileCreating Branch and committing changes - Managing branches in GitHubSection 9:Getting Started as CollaboratorCloning a public repo and exploring other optionsCloning a Private Repository and adding project collaborators on GitHubUnderstanding Tracking Branches and Default branchExploring Tracking branches - Configuring Default branch - Understanding OrUnderstanding origin remote - adding, editing, deleting remotesSection 10:Git FetchUnderstand Git Fetch and it's use casesGit Fetch in Action Part1 (Command variations - Checking status with commanGit Fetch in Action Part2 (Exploring refs - FETCH_HEAD)Switching to Remote Repo StateMerging the Changes - Using FETCH_HEADUsing Visual Studio code to Fetch and MergeUpdating Local References with Git FetchSection 11:Git PullUnderstanding Git PullGit Pull in Action and observing what it doesUnderstanding Git Pull with 3way mergeGit pull with rebase and it's implicationsDealing with conflicts with Git Pull –rebaseUsing Stashing and Hard resetSection 12:Contributing to the remote repositorySetting up everything for contributing - Adding collaborator - Setting credCreating a remote branch and pushing changes using Git Bash and VSCode - PuUnderstanding Pull Request - Raising a Pull RequestUnderstanding protected branches - Applying branch protection rule - MandatReviewing and approving the changes - Working on review comments and publisExploring the merging options - Understanding Squashing commits - DeletingWhat Git Pull Actually DoesResolving conflicts on GitHub the right way - Force pushing changes and it'Divide and Conquer StrategyResolving Conflicts by merging main in to feature branchSection 13:13 Forking and Contributing to Opensource ProjectsWhat is Forking and why forkingForking a public repository and cloning it in our local machineContributing the necessary changesSyncing the Forked repo with original one and updating localSyncing the Forked repo with original from local repoPushing our changes to the forked repoRaising the pull request and merging the changes in upstream repositoryExploring Existing Public ProjectSection 14:Branching Strategy and TagsBranching Strategy ExplainedBranching Strategy with Realtime ScenarioSemantic Versioning ExplainedUnderstanding Git TagsBraching Workflow in ActionHot Fix workflow in ActionCreating Tags - Annotated vs Lightweight Tags - Pushing tags to remoteUnderstanding how Tags are stored - Detached head state with tagsReleases and Creating Tags on GitHubSection 15:Branch Protection RulesDismiss stale pull request approvals for new commitsConfiguring Code Owners with patterns - Automatic review requestMandating conversation resolution before mergingExploring all other branch protection rulesSection 16:Digital Signatures and Verified commitsMimicking the Commits and the need to have verified commitsUnderstanding Digital SignaturesUnderstanding Signed CommitsCreating Public and Private Keys Using GPGExporting Public Key and updating GPG key on GitHubMaking Signed Commit - Setting global config - verifying signed commits onMandating Signed Commits - Signing commits from VS CodeSection 17:Git HooksWhat are Git HooksDemonstrating Git HookStandardizing Hooks across teamsExplore Other HooksSection 18:Other ConceptsBug Tracing with Git BisectGit Diff to compare and visualize differencesGit Diff to compare branchesAdvanced Git LogAll About GitHub Pages
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Need For Version Control System and Git Part 1
Lecture 3 Need For Version Control System and Git Part 2
Lecture 4 VCS-How it works
Lecture 5 Distributed VCS
Lecture 6 Installing Git
Lecture 7 Git CLI vs Git Bash vs Git GUI
Lecture 8 Basic Bash Commands
Lecture 9 What exactly is Git Commit
Lecture 10 Initializing the project and Exploring dot git folder
Lecture 11 Configuring Git Credentials and exploring local global system configs
Lecture 12 Staging and Unstaging and checking status
Lecture 13 Understanding Commit with multiple use cases
Section 2: Git Deep Dive
Lecture 14 Sha1 Hashing Algorithm
Lecture 15 Git Internals (All about Object Database) Part 1
Lecture 16 Git Internals (All about Object Database) Part 2.zip
Lecture 17 Git Internals - Viewing and reading Git Objects
Lecture 18 How Blob Objects Behave
Lecture 19 Garbage Collection and Pack Files
Lecture 20 Git Snapshot - What it means to take a snapshot
Lecture 21 Time travel with Git
Lecture 22 Time Travel in Practice
Section 3: Git Branches
Lecture 23 Life without Branches
Lecture 24 What are Git Branches
Lecture 25 How Branches Solved our Problems
Lecture 26 How Git Branches Work and What Exactly is a Branch
Lecture 27 Branches in Action (Creating Branches and exploring the git repo)
Lecture 28 Understanding 'HEAD' - Detached Head State - Head in Action.
Lecture 29 Undo the changes with Git Reset HEAD
Lecture 30 Retrieving the lost mystery with reflog
Section 4: Merging
Lecture 31 Fast-Forward Merge
Lecture 32 Fast-Forward Merge In Action
Lecture 33 Deleting the branch and recovering
Lecture 34 Understanding Three Way Merge and Merge Commit
Lecture 35 Three Way Merge in Action
Lecture 36 Understanding Merge Conflicts
Lecture 37 Merge Conflicts in Action Part 1
Lecture 38 Merge Conflicts in Action Part 2
Lecture 39 Installing and setting up Visual Studio Code to work on Git.mp4
Lecture 40 Exploring VS Code and performing GIT Operations
Section 5: Git Rebase
Lecture 41 Git Rebase vs Merge
Lecture 42 Performing Rebase in VS Code & Handling conflicts
Lecture 43 Git Rebase in Git Bash - Skipping conflicts and Aborting the Rebase
Lecture 44 Git Interactive Rebase
Lecture 45 Rebase to specific commit or to another feature branch
Lecture 46 When to use rebase and when to use Merge - use cases
Section 6: Stashing
Lecture 47 What is Stashing - It's use cases - Example of Stashing
Lecture 48 Applying the stash across multiple branches
Lecture 49 Retrieving a specific stash - Listing stashes - Handling conflicts
Lecture 50 Stashing Selective Changes and retrieving them - Understanding Hunk
Lecture 51 Exploring stashing in VS Code - Deleting a stash
Section 7: Git Ignore
Lecture 52 Git Ignore and it's significance (Crash course)
Lecture 53 Git Ignore in action - Global exclude config
Lecture 54 Precedence order - overriding - Pattern debugging
Lecture 55 Ignore files that were already committed
Lecture 56 Generating the Ignore files for your project
Section 8: Git Hub
Lecture 57 Why GitHub - GitHub vs Bit Bucket vs GitLab
Lecture 58 Creating GitHub Account
Lecture 59 Creating and understanding Public and Private repositories in GitHub
Lecture 60 Making Commits in GitHub and Understanding ReadMe file
Lecture 61 Creating Branch and committing changes - Managing branches in GitHub
Section 9: Getting Started as Collaborator
Lecture 62 Cloning a public repo and exploring other options
Lecture 63 Cloning a Private Repository and adding project collaborators on GitHub
Lecture 64 Understanding Tracking Branches and Default branch
Lecture 65 Exploring Tracking branches - Configuring Default branch - Understanding Or
Lecture 66 Understanding origin remote - adding, editing, deleting remotes
Section 10: Git Fetch
Lecture 67 Understand Git Fetch and it's use cases
Lecture 68 Git Fetch in Action Part1 (Command variations - Checking status with comman
Lecture 69 Git Fetch in Action Part2 (Exploring refs - FETCH_HEAD)
Lecture 70 Switching to Remote Repo State
Lecture 71 Merging the Changes - Using FETCH_HEAD
Lecture 72 Using Visual Studio code to Fetch and Merge
Lecture 73 Updating Local References with Git Fetch
Section 11: Git Pull
Lecture 74 Understanding Git Pull
Lecture 75 Git Pull in Action and observing what it does
Lecture 76 Understanding Git Pull with 3way merge
Lecture 77 Git pull with rebase and it's implications
Lecture 78 Dealing with conflicts with Git Pull –rebase
Lecture 79 Using Stashing and Hard reset
Section 12: Contributing to the remote repository
Lecture 80 Setting up everything for contributing - Adding collaborator - Setting cred
Lecture 81 Creating a remote branch and pushing changes using Git Bash and VSCode - Pu
Lecture 82 Understanding Pull Request - Raising a Pull Request
Lecture 83 Understanding protected branches - Applying branch protection rule - Mandat
Lecture 84 Reviewing and approving the changes - Working on review comments and publis
Lecture 85 Exploring the merging options - Understanding Squashing commits - Deleting
Lecture 86 What Git Pull Actually Does
Lecture 87 Resolving conflicts on GitHub the right way - Force pushing changes and it'
Lecture 88 Divide and Conquer Strategy
Lecture 89 Resolving Conflicts by merging main in to feature branch
Section 13: 13 Forking and Contributing to Opensource Projects
Lecture 90 What is Forking and why forking
Lecture 91 Forking a public repository and cloning it in our local machine
Lecture 92 Contributing the necessary changes
Lecture 93 Syncing the Forked repo with original one and updating local
Lecture 94 Syncing the Forked repo with original from local repo
Lecture 95 Pushing our changes to the forked repo
Lecture 96 Raising the pull request and merging the changes in upstream repository
Lecture 97 Exploring Existing Public Project
Section 14: Branching Strategy and Tags
Lecture 98 Branching Strategy Explained
Lecture 99 Branching Strategy with Realtime Scenario
Lecture 100 Semantic Versioning Explained
Lecture 101 Understanding Git Tags
Lecture 102 Braching Workflow in Action
Lecture 103 Hot Fix workflow in Action
Lecture 104 Creating Tags - Annotated vs Lightweight Tags - Pushing tags to remote
Lecture 105 Understanding how Tags are stored - Detached head state with tags
Lecture 106 Releases and Creating Tags on GitHub
Section 15: Branch Protection Rules
Lecture 107 Dismiss stale pull request approvals for new commits
Lecture 108 Configuring Code Owners with patterns - Automatic review request
Lecture 109 Mandating conversation resolution before merging
Lecture 110 Exploring all other branch protection rules
Section 16: Digital Signatures and Verified commits
Lecture 111 Mimicking the Commits and the need to have verified commits
Lecture 112 Understanding Digital Signatures
Lecture 113 Understanding Signed Commits
Lecture 114 Creating Public and Private Keys Using GPG
Lecture 115 Exporting Public Key and updating GPG key on GitHub
Lecture 116 Making Signed Commit - Setting global config - verifying signed commits on
Lecture 117 Mandating Signed Commits - Signing commits from VS Code
Section 17: Git Hooks
Lecture 118 What are Git Hooks
Lecture 119 Demonstrating Git Hook
Lecture 120 Stadardising Hooks across teams
Lecture 121 Explore Other Hooks
Section 18: Other Concepts
Lecture 122 Bug Tracing with Git Bisect
Lecture 123 Git Diff to compare and visualize differences
Lecture 124 Git Diff to compare branches
Lecture 125 Advanced Git Log
Lecture 126 All About GitHub Pages
Anyone who wants to learn Git and GitHub in it's entirety,Anyone who wants to know how to contribute to open source projects,Anyone who aspire to start their career in Cloud/DevOps