Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
This course will comprehensively cover the GitHub hosting service as a companion to the Git source control tool, which means no prior knowledge or experience is required. Students will emerge at the end with a very solid understanding and hands-on experience with Git and GitHub.
The course is divided into four major components:
Each one of the above components spans multiple sections in this course.
New! Closed captions throughout the course!
The Introduction provides a welcome to the course including some useful tips for getting the most out of taking the course and how the course is designed. That is followed by the Core Concepts which go over some critical theory before diving straight into Git.
After the introduction and core concepts, the first thing we do is a Quick Installation for both Windows and Mac. The Bonus section has a more comprehensive, step-by-step process for those that prefer it.
In The Basics, we walk through all the foundational commands needed to start a new project managed by Git (or enable Git for an existing project) all the way through making commits, including common file operations like moving and deleting files. We also cover how to exclude the wrong files from accidentally being committed and how to review your repository's history.
With a strong foundation in place, we explore some more Advanced Git topics like comparing differences, branching and merge resolution, tagging special events, saving work in progress, and even a bit of time travel.
The main part of this course is all about GitHub. We will explore GitHub indepth from a source control hosting repository perspective.
In Welcome to GitHub we start off exploring some of the basic features of GitHub by creating a fresh repository and associate our local repository with it. Then, we prepare for the remainder of the course by setting up SSH Authentication, which we will use from this point forward. After that, we continue looking at the GitHub Repository, including many of the same operations we performed locally, but done directly within GitHub. Then in GitHub Repository Branches we dive into how Branches on GitHub and our local system work with each other.
After we have comprehensively covered how GitHub repositories work, we focus on how GitHub Tags and Releases work and their relationship with local tags in Git. We can then use tags/releases while Comparing Differences on GitHub.
We start tying things together in Social Coding where we join other projects on GitHub by forking and then submitting our contributions back using pull requests.
Once part of a team, you might use GitHub Issues to track defects or enhancement requests.
Sometimes you just need to share small parts of a file or a set of files, but don't want to bother with a full Git repository. That where GitHub Gists help out -- share just a snip of code or entire files.
Finally, group related GitHub repositories with GitHub Organizations and manage permissions and access using teams.
The bonuses sections and lectures provide additional information, more comprehensive instructions, or non-critical lectures.
All tools have installation and configuration sections to ensure no one is left behind.
Presentations provide audio/video training of conceptual ideas. Since few like slide-ware presentations, slide-presentations are kept to a minimum.
Screencasts provide a video of the instructor's computer system with any actions, commands, or screens displayed and narrated. There is nearly 5 hours of screencast based video training in order to step through each command or action in sufficient detail.
All videos are available in high quality 1080p / Full HD resolution for sharp and clear viewing on modern desktops and tablets.
Several attachments and document lectures throughout the course provide supplemental information, illustrations, or other reference material.
This course will expand periodically to include more topics, supporting materials and bonus content! Some content may be in direct response to student feedback or discussions -- so get engaged with the course discussions feature!
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: Introduction|
Audience and ApproachPreview
Using The Command Line
|Section 2: Core Concepts|
Core Concepts Overview
What is Git
Commits and Files
What is GitHub
|Section 3: Quick Installations|
Quick Installation Overview
Quick Install on Windows
Quick Installation on Windows Notes
Quick Install on Mac OS X
Quick Install on Mac OS X Notes
|Section 4: The Basics|
The Basics OverviewPreview
Repository and the Git Folder
Starting with Existing Project
Commits and Messages
Commit Details with Log and Show
Backing Out Changes
History and Making New Commands with Alias
Rename and Delete Files
Managing Files Outside of Git
Excluding Unwanted Files
|Section 5: Advanced: Beyond the Basics|
Branching and Merge Types
Simple Branching Example
Marking Special Events with Tagging
Saving Work in Progress with Stashing
Time Travel with Reset and Reflog
|Section 6: Welcome to GitHub|
Welcome to GitHub Overview
Signup for GitHub
Creating a GitHub Repository
Linking to our GitHub Repository
Pushing Changes to GitHub
Verifying our Changes on GitHub
|Section 7: SSH Authentication|
SSH vs HTTPS
Generating an SSH Key
Verify SSH Authentication with GitHub
|Section 8: GitHub Repository|
GitHub Repository OverviewPreview
Starting Remote with a Starter RepositoryPreview
Create a Local Copy with Clone
Seeding the Repository with Sample Content
Publish Back to GitHub
Fetch and Pull
Repository Features and Settings
Updating Repository and Remote References
Looking at Files and Folders on GitHub
Directly Editing Files on GitHub
Creating a New Files on GitHub
Creating a New File on Master
Renaming and Deleting Files on GitHub
Synchronizing our Changes with our Local Repository
Reviewing Commits with the Commit List
Commit Details: Going Deeper
GitHub Time Travel: Reviwing Your Repository as of a Particular Commit
Using Commit IDs with the Local Repository
|Section 9: GitHub Repository Branches|
Repository Branches Overview
Creating Branches on GitHub
Comparing and Pull Requests
Locally Switch to a Branch on GitHub
Cleaning Up By Deleting Branches and References
Pull with Rebase
Setting the Default Branch
Dealing with a Conflict while Pulling
|Section 10: GitHub Tags and Releases|
Tags and Releases Overview
Local Tags (a bit of Review)
Pushing Local Tags to GitHub
Tags on GitHub
Deleting Tags on GitHub
Updating Tags: Creating a Floating Tag
Starting a Release on GitHub
Deleting a Release
Creating a Completely New Release
|Section 11: Comparing Differences|
Comparing Differences Overview
Comparing with Pull Requests