Git GitHub The Practical Guide

Learn Git & GitHub and master working with commits, branches, the stash, cherry picking, rebasing, pull requests & more!
Git GitHub The Practical Guide
File Size :
2.49 GB
Total length :
10h 24m



Academind by Maximilian Schwarzmüller


Last update

Last updated 11/2022



Git GitHub The Practical Guide

What you’ll learn

Learn all you need to work with Git, including all about repositories, commits, branches & more
Understand how Git works behind the scenes and understand local & remote as well as local-tracking & remote-tracking branches
Dive into advanced Git features like merging, rebasing, the stash and learn how to manage merge conflicts
Bring Git’s power to the cloud with GitHub
Learn how to collaborate in projects via Git & GitHub in teams & organizations
Learn how to contribute to open-source projects via forks & pull requests
Efficiently manage projects with Git & GitHub

Git GitHub The Practical Guide


NO prior Git or GitHub or web development knowledge is required
An email address is required to create a (free) GitHub account
The course can be attended on Mac & Windows computers


No matter if you’re just getting started with (web) development, if you’re applying for a developer job or if you just need to refresh your knowledge – version control is a core skill you need to succeed as a developer!Git (a version control system) and Github (a cloud provider for Git managed projects) form an outstanding combination to provide the best possible experience to create and maintain a clearly structured project history!This course will guide everyone (no prior knowledge is required!) through the core steps to use these tools in your daily projects with ease.What is Version Control?Saving & accessing data and tracking changes is what version control is all about. No matter if you’re working on a private or a professional development project, code evolves, changes and continuously gets improved. A clean version management structure is therefore key to successfully manage the progress of your projects.What is Git?Git is a 100% free version management tool, specifically created for and used by developers all over the world to manage project code history locally on their machines (Windows, macOS, Linux/Unix).What is GitHub?GitHub is an online service, it is also free for many use cases (an account is all you need) and brings Git’s local “file-tracking” strengths to the cloud. Storing project code online, updating code, accessing other team members’ code or collaborating on large scale projects inside your organization – all possible with the help of GitHub!Why Should I Know these Tools?Version control is key to manage projects efficiently so not knowing Git and GitHub makes your daily developer life a lot more complicated. The same apply if you’re currently looking for a new job in the industry, version control is required in any developer projects these days, so not knowing Git & GitHub puts you behind your competition!Although Git and GitHub are user friendly, both come with their own logic and “language”. Getting started can therefore be a bit cumbersome and this is where this course comes into play!What do I Learn in this Course?This course starts at the very basics, no prior Git or GitHub knowledge is required! You’ll learn how to use Git and how to write Git commands in the Mac Terminal or the Windows Command Prompt (optional refreshers on both are also part of the course).Starting with the first initialization of a so-called Git repository, we’ll build up your knowledge step-by-step and understand the what & why behind concepts like branches, commits, the staging area, merging & rebasing, cloning, pushing & pulling branches and a lot more!What’s Inside this Course?An optional Command Line Crash Course for both Windows & MacOS usersGit Download & InstallationGit Theory – Working Directory, Staging Area (Index) and Repository explainedCreating Git RepositoriesWorking with CommitsUnderstanding BranchesUnderstanding the HEAD and the detached HEADNewly Introduced Git Commands with Git Version 2.23Deleting Data (Staged & Unstaged, Commits & Branches)Ignoring FilesThe StashMerging, Rebasing and Cherry PickingBringing Back Deleted Data with the ReflogConnecting Local Git Repositories to Remote GitHub RepositoriesGit Push & Pull (+ Fetch)Local, Remote Tracking & Remote BranchesGitHub Collaborators & ContributorsForks & Pull RequestsGitHub IssuesGithub Projectsand so much more!All covered, explained and applied in easy to understand examples in the course!—In this course we’ll find answers to questions like:”How can I delete my last commit?””What is the Stash?””What is the difference between a merge and a rebase (and what is cherry-picking actually)?””How to bring back a deleted commit?””What is the difference between a local tracking branch and a remote tracking branch?”—What are you waiting for, jump and board and let’s GIT started 🙂


Section 1: Introduction

Lecture 1 Welcome to this Course!

Lecture 2 What is Git?

Lecture 3 What is GitHub?

Lecture 4 Join Our Learning Community!

Lecture 5 Course Content

Lecture 6 How to Get the Most out of this Course!

Lecture 7 Course Slides

Section 2: Optional: Mac Terminal & Windows Command Prompt Introduction

Lecture 8 Module Introduction

Lecture 9 The Command Line – What & Why?

Lecture 10 Comparing the Mac & Windows Command Line

Lecture 11 Please Read! Windows & Mac Users

Lecture 12 Mac Terminal – The Basics

Lecture 13 Accessing Folders

Lecture 14 Absolute vs Relative Paths

Lecture 15 Creating & Deleting Files

Lecture 16 Introducing Flags and Removing Data

Lecture 17 Copying & Moving Files & Folders

Lecture 18 Mac Terminal – Core Commands Overview

Lecture 19 Windows Command Prompt – The Basics

Lecture 20 Absolute vs Relative Paths

Lecture 21 Creating & Deleting Files & Folders

Lecture 22 Copying & Moving Files

Lecture 23 Windows Command Prompt – Core Commands Overview

Lecture 24 Useful Resources & Links

Section 3: Version Management with Git – The Basics

Lecture 25 Module Introduction

Lecture 26 Theory – How Git Works

Lecture 27 Theory: Working Directory vs Repository

Lecture 28 Theory – Understanding Branches

Lecture 29 Please Read! Windows & Mac Users

Lecture 30 Installing Git on Windows

Lecture 31 Installing Git on MacOS

Lecture 32 Installing Visual Studio Code

Lecture 33 Initializing the Repository & Creating the First Commit (“git init” & “git commi

Lecture 34 Please Read: Exiting the Log

Lecture 35 Diving Deeper Into Commits with “git log”

Lecture 36 Understanding & Creating Branches

Lecture 37 Merging Branches – The Basics

Lecture 38 Understanding the HEAD

Lecture 39 The “detached HEAD”

Lecture 40 Branches & “git switch” (Git 2.23)

Lecture 41 Deleting Data – An Overview

Lecture 42 Deleting Working Directory Files

Lecture 43 Undoing Unstaged Changes

Lecture 44 Undoing Staged Changes

Lecture 45 Deleting Commits with “git reset”

Lecture 46 Deleting Branches

Lecture 47 Committing “detached HEAD” Changes

Lecture 48 Understanding .gitignore

Lecture 49 Wrap Up & Basic Commands Overview

Lecture 50 Useful Resources & Links

Section 4: Diving Deeper Into Git

Lecture 51 Module Introduction

Lecture 52 Understanding the Stash (“git stash”)

Lecture 53 Bringing Lost Data Back with “git reflog”

Lecture 54 Combining Branches – What & Why?

Lecture 55 Understanding Merge Types

Lecture 56 Applying the Fast-Forward Merge

Lecture 57 The Recursive Merge (Non-Fast-Forward)

Lecture 58 Rebasing – Theory

Lecture 59 Applying “git rebase”

Lecture 60 Handling Merge Conflicts

Lecture 61 Merge vs Rebase vs Cherry Pick

Lecture 62 Undestanding “git cherry-pick”

Lecture 63 Working with Tags (“git tag”)

Lecture 64 Wrap Up

Lecture 65 Useful Resources & Links

Section 5: From Local to Remote – Understanding GitHub

Lecture 66 Module Introduction

Lecture 67 What is GitHub?

Lecture 68 From Local to Remote Repository – Theory

Lecture 69 Creating a GitHub Account & Introducing GitHub

Lecture 70 Creating a Remote Repository

Lecture 71 Connecting Local & Remote Repositories

Lecture 72 Understanding the Personal Access Token

Lecture 73 MacOS Users Only: Please Read

Lecture 74 Pushing a Second Commit

Lecture 75 From Local to Remote – Understanding the Workflow

Lecture 76 Remote Tracking Branches in Practice

Lecture 77 Understanding Local Tracking Branches

Lecture 78 Creating Local Tracking Branches

Lecture 79 Remote & Tracking Branches – Command Overview

Lecture 80 Cloning a Remote Repository

Lecture 81 Understanding the Upstream

Lecture 82 Deleting Remote Branches & Public Commits

Lecture 83 Wrap Up

Lecture 84 Useful Resources & Links

Section 6: GitHub Deep Dive – Collaboration & Contribution

Lecture 85 Module Introduction

Lecture 86 The 4 GitHub Usecases

Lecture 87 Understanding GitHub Account Types

Lecture 88 Changing the Repository Type from Public to Private

Lecture 89 Pushing Commits to a Public Repository

Lecture 90 How GitHub Manages Account Security

Lecture 91 Understanding & Adding a Collaborator to a Private User Account

Lecture 92 Collaborating in Private Repositories

Lecture 93 Comparing Owner & Collaborator Rights

Lecture 94 Limiting Interactions

Lecture 95 Introducing Organizations

Lecture 96 Creating an Organization

Lecture 97 Exploring Member Repository Permissions

Lecture 98 Adding Outside Collaborators

Lecture 99 Adding Organization Members

Lecture 100 Failing to Manage Access for Individual Repositories

Lecture 101 Introducing Teams

Lecture 102 Managing Team Repository Access Efficiently

Lecture 103 Understanding Forks & Pull Requests

Lecture 104 Forking a Repository

Lecture 105 Pull Requests in Practice

Lecture 106 Opening & Closing Issues

Lecture 107 Working with GitHub Projects

Lecture 108 Creating a README File in a Repository

Lecture 109 Presenting Yourself as Developer on GitHub

Lecture 110 About GitHub Stars

Lecture 111 Wrap Up

Lecture 112 Useful Resources & Links

Section 7: Real Project Example: Git & GitHub Applied

Lecture 113 Module Introduction

Lecture 114 Preparing the Project

Lecture 115 Project Setup

Lecture 116 Creating our First Commit Locally

Lecture 117 Changing the ReactJS Project Code

Lecture 118 Pushing the Code to the Owner’s Remote Repository

Lecture 119 Cloning the Project & Changing the Code

Lecture 120 Pushing the Commit & Why it Fails

Lecture 121 Adding a Collaborator

Lecture 122 Creating the Personal Access Token & Pushing Successfully

Lecture 123 Merging the Owner Branches

Lecture 124 Fixing Merge Conflicts

Lecture 125 Accessing Code via Forks

Lecture 126 Contributing to the Project by Improving the Code

Lecture 127 Creating the Pull Request

Lecture 128 Accepting the Pull Request

Lecture 129 Useful Resources & Links

Section 8: Course Roundup

Lecture 130 Course Roundup

Anybody who wants to learn what version management is & how it can help to organize your code and projects efficiently,(Web) developers who want to learn new skills to increase their efficiency,Anybody who wants to master Git & GitHub for private or professional projects

Course Information:

Udemy | English | 10h 24m | 2.49 GB
Created by: Academind by Maximilian Schwarzmüller

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top