The Complete Git & GitHub 2020 Course: Beginner to Advanced
4.7 (48 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
355 students enrolled

The Complete Git & GitHub 2020 Course: Beginner to Advanced

A Full 2020 Practical Guide to Git and GitHub, From Beginner to Expert in Easy Step-By-Step Tutorial
Bestseller
4.7 (48 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
355 students enrolled
Created by Fettah Ben
Last updated 6/2020
English
English [Auto]
Current price: $129.99 Original price: $199.99 Discount: 35% off
19 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 7.5 hours on-demand video
  • 3 articles
  • 3 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Git server administration including setup, user management, and access control for both SSH and HTTP access.
  • Use Git and GitHub efficiently to create and manage your personal and professional projects
  • Create and Manage repositories, pull requests, branching and merging, forking, labels, and much more.
  • Engage the team, work with others, and walk through real-world scenarios.
  • Master the everyday basics of Git with a hands-on, step-by-step project
  • Dive deep in GitHub's main features, including pull requests, issues, Webhooks, wikis, Project setting and much more
Requirements
  • Basic computer skills
  • Basic Command Line skills
  • All Needed Software Are Available For Free
Description

Learn the fundamentals of Version Control through this step-by-step tutorial that will teach you the ins-and-outs of Git. This course is your complete guide to how Git and GitHub work in a professional team environment.

Git is a free and open source Distributed Version Control System (DVCS) designed to handle everything from small to very large projects with speed and efficiency.

Throughout this course, you'll learn about Git's core functionality so you can understand how and why it’s used in organizations. We’ll look into both basic and more advanced features, like branches, pull request, tagging and merging. We'll demonstrate how having a working knowledge of a VCS like Git can be a lifesaver in emergency situations or when debugging. And then we'll explore how to use a VCS to work with others through remote repositories, like the ones provided by GitHub.

Then, we'll explore why GitHub is such a powerful and popular tool among software developers, project managers, team members, designers, and students for its flexibility and control. You’ll see how to manage a software project, and how to utilize Git and GitHub to work effectively as a team.

Finally you’ll examine how to plan, follow and execute a project with Git and GitHub, and then apply those concepts to real-world situations.

What You Will Learn

The course is designed to teach you:

  • How to Install and configure Git.

  • Create and Manage Git repository and Git workflows.

  • Track changes, work with branches, Pull Request and tags.

  • Create, Configure and Manage GitHub Repository.

  • Navigate, Use, and Contribute to open source projects though GitHub.

  • Working with teams on GitHub Projects.

  • And more …

Once you have completed the course, you should be able to immediately start using Git and GitHub to manage your own code.

PS: Check the Free Preview videos to know more about the course and to be sure you can get accustomed to my accent.

Enroll now!

Who this course is for:
  • Software engineers, developers, programmers new to Git and GitHub.
  • IT Managers and System administrators who want to implement and manage there own Git server.
  • Anyone interested in using source control and specifically Git with GitHub Server
Course content
Expand all 124 lectures 07:29:33
+ What Is Git & GitHub & Why You Should Learn them
9 lectures 33:50

Welcome to Git and GitHub Course.

Preview 01:57

Git is a distributed version control tool that can manage a development project's source code history, while GitHub is a cloud based platform built around the Git tool.

What Is Git & GitHub
04:43

The concept of a centralized system is that it works on a Client-Server relationship. The repository is located at one place and provides access to many clients. Whereas, in a Distributed System, every user has a local copy of the repository in addition to the central repo on the server side

Centralized vs Distributed Version Control Systems
02:31

Your Feedback is Important for this Git and Github course.

Your Feedback is Important
00:54

Git simplifies the process of working with other people and makes it easy to collaborate on projects. Team members can work on files and easily merge their changes in with the master branch of the project. This allows multiple people to work on the same files at the same time.

Why You Must Learn Git
06:21

List of Different Advantages of using Git

Advantages of Git
03:39

Here our top list of Git and GitHub references with their definitions so that you can impress the pants off your technical team at your next development WIP.

A Summary of Terms and Definitions About Git and GitHub
06:51

Explanation of different Git Terms used in the course

Git Terms: Explained
03:45

Notes and Rules to Follow  when using Git and GitHub

Important Notes Before Using Git and GitHub
03:09
+ Welcome to GitHub Development Platform.
3 lectures 10:54

Simply visit https://github.com, choose a user name that isn't already taken, provide an email address and a password, and click the big green “Sign up for GitHub” button.

Signing up for a new GitHub account
04:49

Learn how to create a GitHub repository, and make your very first commit

Creating Your First GitHub Project
03:19

Create sophisticated formatting for your prose and code on GitHub with simple syntax.

All About Readme File of GitHub
02:46
+ Installation of Git on Linux, Mac and Windows
5 lectures 12:34

Before you can use Git, you have to install and do some basic configuration changes.

Git Downloads for Windows, Linux And Mac OS
03:10

Now that you have downloaded Git, it's time to start using it on Windows.

Install Git on Windows
03:27
Install Git on Linux and Unix
01:58
Install Git on Mac OS
01:51

cmder is software package that provides great console experience even on Windows.

Using Cmder Console Emulator
02:08
+ The Basics of Using Git
9 lectures 23:01

Find out how to clone remote repositories from popular sites such as GitHub onto your local system. We will clone over HTTPS, and show you what you get when you clone a project.

Preview 01:56

Learn how to add files and folders to a project that git will track.

Create the Main Structure of the Project
01:12

Use the status command with git to find out details about your current project's state. This will help you track your staged and unstaged files, and show you changes that are waiting to be committed.

The Status of Your Project
02:10

Add the new files of your project to the staging area.

Tracking The New Files of Your Project
01:43

When working with Git, it is quite common for developers to add all the files to your index in order to prepare them for commit.

However, in some cases, you may want to remove files from the index, in other words, you want to unstage files.

Unstage Files Using Git Reset and Git Restore
04:39

The first thing you should do when you install Git is to set your user name and email address. this lecture will do the email and next will see how we can do it exactly

Setting Your Commit Email Address in Git
01:52

Now that you have items added to your repository, you will need to commit the changes to your project.

How To Git Commit With Message
03:51

The . git folder contains all the information that is necessary for your project in version control and all the information about commits, remote repository address, etc.

Inside Git: (dot) Git directory
02:55

Find out how easy it is to push local changes to a remote repository.

Pushing Commits to Remote Repositories
02:43
+ Managing Your Work on GitHub Website
8 lectures 37:42

Check the Result of your first push from Git to GitHub on your project.

Preview 03:12

You can trace changes to lines in a file and discover how parts of the file evolved over

Committing And Reviewing Changes To Your Project
07:52

A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project.

Copying A GitHub Repository by Forking
04:19

Deleting a repository. You can delete any repository or fork if you're either an organization owner or have admin permissions for the repository or fork.

Delete a GitHub Repository
01:48

You can invite users to become collaborators to your personal repository.

Inviting Collaborators To a Personal Repository
02:49

Edit and update files in your project then push the update to GitHub repository.

Update Files In Your GitHub Project
07:36

All the collaborators on GitHub project can edit files in relation about the permission they have.

Editing Files As a Collaborator on GitHub Project
04:13

The git pull command is used to fetch and download content from a remote repository and immediately update the local repository to match that content

Pull Changes From Remote Repository
05:53
+ Everything About Git Configurations
10 lectures 35:34

Git uses a username to associate commits with an identity. The Git username is not the same as your GitHub username

Setting your Globally Username and User-email in Git
01:51

Git uses a username or user email to associate commits with an identity. This config will be associate with your project repository only.

Setting your Locally Username and User-email in Git
03:00

Git config: list all variables and their default values.

List all Variables Set In Config File
03:52

Where system, global and local Windows Git config files are saved

Global and Local Windows Git Config Files
04:40

Changes an existing remote repository URL

Preview 02:08

How to colorize git-status output.

Different Colors For Different Git Status
02:33

Use a text editor to open and edit your files with Git.

Associating Text Editors with Git
05:29

You can configure Git to ignore files you don't want to check in to GitHub.

Ignore Certain Files in Git
05:16

You can also create a global .gitignore file to define a list of rules for ignoring files in every Git repository on your computer.

Configuring Ignored Files For All Repositories on Your Computer
03:10

Use the git remote rename command to rename an existing remote.

Rename An Existing Git Remote
03:35
+ Managing GitHub Project With SSH
8 lectures 28:51

Using the SSH protocol, you can connect and authenticate to remote servers and services. With SSH keys, you can connect to GitHub without supplying your username or password at each visit.

About SSH
03:48

After you've checked for existing SSH keys, you can generate a new SSH key to use for authentication.

Generating a New SSH Key
04:47

To configure your GitHub account to use your new (or existing) SSH key, you'll also need to add it to your GitHub account.

Adding a New SSH Key to Your GitHub Account
02:41

After you've set up your SSH key and added it to your GitHub account, you can test your connection.

Testing Your SSH Connection
02:41

Find out how to create and initiate a new git repository on your local system.

Creating a New Local Git Repository (Empty)
03:07

How to Add a New Remote to your Git Repo that does not have a remote URL yet.

Add a New Remote to Your Git Repo
03:02

In the code, the origin is your default remote repository name and '-u' flag is upstream, which is equivalent to '-set-upstream.' and the master is the branch, name.upstream is the repository that we have cloned the project.

Push the Code In Your Local Repository To GitHub
04:32

Push the Change in your local project by using your GitHub Email account and name.

Push the Change By Your GitHub Email Account
04:13
+ GitHub Pull Requests
12 lectures 55:48

Fork the repo on GitHub, then add your fork repo as a remote to your local cloned copy

Clone The Project to Send a Pull Request
02:54

Edit The Project to be able to send a Pull Request on the original project

Edit The Project Before Send a Pull Request
04:06

To create a pull request, you need to have made your code changes on a separate branch or forked repository

Create a Pull Request on GitHub From a Fork
05:56

Approving a pull request with required reviews

Preview 04:17

Delete a closed pull request from GitHub

Review and Delete Closed Pull Request
02:37

A contributor is someone from the outside not on the core development team of the project that wants to contribute some changes to a project

Viewing The Project's Contributors
03:43

Create and Commit changes to a New branch and send it as a pull request

Commit Changes To a New Branch
07:19

The only way to open up a pull request for multiple commits is: Isolate them into their own branch. Open the pull requests from there.

Open Multiple Pull Requests on GitHub
03:25

You may choose to close a pull request without merging it into the upstream branch.

Merge or Close Multiple Pull Requests on GitHub
04:36

You can quickly find proposed changes to files project in a pull request details.

Review changed Files in a Pull Request
06:10

Alias creation is a common pattern found in other popular utilities like "bash" shell. Aliases are used to create shorter commands that map to longer commands.

Everything About Git Aliases
07:58

Update your local repository with any change applied into GitHub project

Pull the Pull Request Change to Local Repository
02:47
+ Branching And Merging From Git
8 lectures 16:23

You can create or delete branches directly on Local Project.

Creating and Deleting Branches
03:07

Switching Between Branches, Abandoning Local Changes. The git checkout command allows context switching between branches as well as abandoning local changes.

Switching Between Local Git Branches
01:34

How do I rename a local Git branch

Renaming Local Git Branches
00:33

Use your favorite text editor, such as Atom, to make changes to your project, from a new Branch

Making Changes In a Local Git Branch
01:01

Go to another branch, then just type in: git branch -D [branch]. The lowercase -d means delete but the -D means “Force a delete no matter what.

Delete An Unmerged Branch In Git
01:32

Git's distributed nature encourages users to create new branches often and to merge them regularly as a part of the development process.

Merge Git Branch into Master
01:04

Push Your Editing from local branch to the remote server

Push Local branch to Remote
04:43

How To Merge Git Branch To Remote

Merge Local Branch Into Remote Branch
02:49
+ Mastering Git Stash
7 lectures 27:59

Stash the changes in a dirty working directory away.

Create Your First Stash
03:57

The "pull" command is used to download and integrate remote changes.

Downloading and Integrating Remote Changes
04:15

Drop and Remove a single stashed state

Pop a Single Stashed State
03:06

List the stash entries that you currently have.

Create Multiple Stashes
05:16

Like pop, but do not remove the state from the stash list.

Applying a Single Stashed State
02:56

Remove a single stash entry from the list of stash entries.

Remove a single stash entry from the list.
05:29

Remove all the stash entries. Note that those entries will then be subject to pruning, and may be impossible to recover

Remove All The Stash Entries.
03:00