In this course, you'll learn how to use Git, a popular version control system (VCS), to keep track of different versions of your code and configuration files. We'll also go over how to sign up for a GitHub account so you can create your own remote repositories to store your code and configuration.
You'll learn about Git's core functionality throughout this course so you can understand how and why it's used in organizations. We'll look at both basic and advanced features such as branches and merging. We'll show how having a working knowledge of a VCS like Git can come in handy in an emergency or when debugging. Then we'll look at how to use a VCS to collaborate with others via remote repositories, such as those provided by GitHub.
By the end of this course, you'll be able to store the history of your code in Git and collaborate with others in GitHub, where you'll also begin creating your own portfolio!
To follow along and complete the assessments, you'll need a computer on which to instal Git or have your administrator install it for you.
1. Introduction to Version Control
- Course Introduction
- Intro to Module 1: Version Control
- Keeping Historical Copies
- Diffing Files
- Applying Changes
- Practical Application of diff and patch
- What is version control?
- Version Control and Automation
- What is Git?
- Installing Git
- Installing Git on Windows (Optional)
- First Steps with Git
- Tracking Files
- The Basic Git Workflow
- Anatomy of a Commit Message
- Module 1 Wrap Up: Intro to Version Control
2. Using Git Locally
- Intro to Module 2: Using Git Locally
- Skipping the Staging Area
- Getting More Information About Our Changes
- Deleting and Renaming Files
- Undoing Changes Before Committing
- Amending Commits
- Identifying a Commit
- What is a branch?
- Creating New Branches
- Working with Branches
- Merge Conflicts
- Module 2 Wrap Up: Using Git Locally
3. Working with Remotes
- Intro to Module 3: Working with Remotes
- What is GitHub?
- Basic Interaction with GitHub
- What is a remote?
- Working with Remotes
- Fetching New Changes
- Updating the Local Repository
- The Pull-Merge-Push Workflow
- Pushing Remote Branches
- Rebasing Your Changes
- Another Rebasing Example
- Best Practices for Collaboration
- Module 3 Wrap Up: Working with Remotes
- Intro to Module 4: Collaboration
- A Simple Pull Request on GitHub
- The Typical Pull Request Workflow on GitHub
- Updating an Existing Pull Request
- Squashing Changes
- What are code reviews?
- The Code Review Workflow
- How to Use Code Reviews in GitHub
- Managing Collaboration
- Tracking Issues
- Continuous Integration
- Module 4 Wrap Up: Collaboration
- Sneak Peek of the Next Course