Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Microsoft

Manage source control

Microsoft via Microsoft Learn

Overview

  • Module 1: Learn to use key GitHub features, including issues, notifications, branches, commits, and pull requests.

    In this module, you will:

    • Communicate with the project community in issues.
    • Manage notifications for project events.
    • Create branches to manage work in parallel.
    • Make commits to update project source.
    • Introduce changes with pull requests.
    • Deploy a web page to GitHub Pages.
  • Module 2: Learn to move your existing project to GitHub from a legacy version control system.

    In this module, you will:

    • Prepare your project for a successful migration.
    • Handle any binary files currently stored in your project.
    • Create important Git files like a .gitignore.
    • Import your project to GitHub.
  • Module 3: Learn to upload your existing project to GitHub.

    In this module, you will:

    • Identify where your code is stored
    • Introduce code to a repository
    • Create important Git files like a .gitignore
    • Identify important next steps to manage your repository and add community involvement
  • Module 4: Learn how to manage changes to your repository source by using pull requests.

    In this module, you will:

    • Create a pull request
    • Comment on pull requests
    • Leave reviews on pull requests
    • Know what's expected when reviewing pull requests
    • Request pull request reviews
    • Accept changes introduced by a pull request review
  • Module 5: Learn to settle overlapping commits across branches by using merge conflict resolution.

    In this module, you will:

    • Understand how merging happens and what causes merge conflicts
    • Resolve simple and complex merge conflicts with ease
    • Share best practices to reduce merge conflicts with your team
  • Module 6: Learn to search and organize repository history by using filters, blame, and cross-linking on GitHub.

    In this module, you will:

    • Find relevant issues and pull requests
    • Search history to find context
    • Make connections within GitHub to help others find things
  • Module 7: Learn to manage a successful InnerSource program on GitHub through effective discoverability, guidance, and maintenance.

    In this module, you will learn to:

    • Contrast user versus organization owned projects
    • Make recommendations about the number of GitHub organizations you should have
    • Create discoverable repositories
    • Create robust repository READMEs
    • Use issue and pull request templates
    • Build transparency into repositories
    • Measure the success of InnerSource within your organization
    • Distribute your InnerSource toolkit
  • Module 8: Learn to use Markdown to communicate with brevity, clarity, and expression.

    In this module, you'll:

    • Use Markdown to add lists, images, and links in a comment or text file.
    • Determine where and how to use Markdown in a GitHub repository.
    • Learn about syntax extensions available in GitHub (GitHub-flavored Markdown).
  • Module 9: Learn best practices for building, hosting, and maintaining a secure repository on GitHub.

    In this module, you will:

    • Identify the tools and GitHub features to establish a secure development strategy
    • Enable vulnerable dependency detection for private repositories
    • Detect and fix outdated dependencies with security vulnerabilities
    • Automate the detection of vulnerable dependencies with Dependabot
    • Add a security policy with a SECURITY.md file
    • Remove a commit exposing sensitive data in a pull request
    • Keep sensitive files out of your repository by applying the use of a .gitignore file
    • Remove historical commits exposing sensitive data deep in your repository
  • Module 10: Learn to automate DevOps processes by using GitHub Apps that handle repetitive tasks, enforce team policies, and maintain a tidy repository.

    In this module, you will:

    • Identify available GitHub Access Tokens needed to support GitHub users.
    • Understand how to monitor token rate limits.
    • Describe the capabilities, use cases, and differences of GitHub Apps and OAuth Apps.
    • Demonstrate your knowledge by installing a GitHub app in a GitHub repository.
  • Module 11: Learn to interact with the GitHub API from GitHub Actions by using GitHub Script.

    In this module, you will:

    • Use GitHub Script in your workflow.
    • Comment on issues using octokit.
    • Add issues to a project board using octokit.
    • Use the workflow expression syntax to filter when jobs run in a workflow.
  • Module 12: Learn to implement a release based workflow on GitHub using project boards, branches, and releases.

    In this module, you will:

    • Build a project board to manage your next release
    • Create and commit changes on a release branch
    • Create a Git tag and a release on GitHub
    • Resolve bugs after a release
    • Automate and better document your release changes
  • Module 13: Learn how to create workflows that enable you to use Continuous Integration (CI) for your projects.

    In this module, you will:

    • Learn essential features and techniques to build robust and dynamic workflows
    • Build and test a Node.js project by using GitHub Actions and a templated workflow
    • Debug a failed test using the GitHub Actions Log
    • Customize your workflow with GitHub Actions
  • Module 14: Create two deployment workflows using GitHub Actions and Microsoft Azure.

    In this module, you will:

    • Discover options for triggering a continuous delivery GitHub Workflow
    • Understand steps to remove workflow artifacts
    • Identify important environment protections
    • Control workflow execution with job conditionals
    • Deploying to Microsoft Azure with a GitHub deploy action
    • Store credentials with GitHub Secrets
    • Create and destroy Azure resources with GitHub Actions workflows
  • Module 15: Learn along with the Space Game web team the benefits of collaboration through Visual Studio Code and GitHub.

    After completing this module, you'll be able to:

    • Collaborate with others by choosing an appropriate branching and merging strategy
    • Add a badge to your GitHub repository to show the status of the latest build
    • Add a dashboard widget to help visualize your build history
    • Set up a rule on your GitHub repository to require a review

Syllabus

  • Module 1: Module 1: Introduction to GitHub
    • Introduction
    • What is GitHub?
    • Exercise - A guided tour of GitHub
    • Knowledge check
    • Summary
  • Module 2: Module 2: Migrate your repository by using GitHub best practices
    • Introduction
    • How do I migrate an existing project to GitHub?
    • Exercise - Migrating your repository to GitHub
    • Knowledge check
    • Summary
  • Module 3: Module 3: Upload your project by using GitHub best practices
    • Introduction
    • How do I prepare and upload an existing project to GitHub?
    • Exercise - Upload your project to GitHub
    • Knowledge check
    • Summary
  • Module 4: Module 4: Manage repository changes by using pull requests on GitHub
    • Introduction
    • What are pull requests?
    • Exercise - Reviewing pull requests
    • Knowledge check
    • Summary
  • Module 5: Module 5: Settle competing commits by using merge conflict resolution on GitHub
    • Introduction
    • What are merge conflicts?
    • Exercise - Manage merge conflicts
    • Knowledge check
    • Summary
  • Module 6: Module 6: Search and organize repository history by using GitHub
    • Introduction
    • How to search and organize repository history by using GitHub
    • Exercise - Connect the dots in a GitHub repository
    • Knowledge check
    • Summary
  • Module 7: Module 7: Manage an InnerSource program by using GitHub
    • Introduction
    • How to manage a successful InnerSource program
    • Exercise - InnerSource fundamentals
    • Knowledge check
    • Summary
  • Module 8: Module 8: Communicate effectively on GitHub using Markdown
    • Introduction
    • What is Markdown?
    • Exercise - Communicate using Markdown
    • Knowledge check
    • Summary
  • Module 9: Module 9: Maintain a secure repository by using GitHub best practices
    • Introduction
    • How to maintain a secure GitHub repository
    • Exercise - Add a .gitignore file
    • Automated security
    • Knowledge check
    • Summary
  • Module 10: Module 10: Automate DevOps processes by using GitHub Apps
    • Introduction
    • What are GitHub Apps?
    • Identify supported Access Tokens
    • Exercise - Getting started with GitHub Apps
    • Knowledge check
    • Summary
  • Module 11: Module 11: Automate GitHub by using GitHub Script
    • Introduction
    • What is GitHub Script?
    • Exercise - Using GitHub Script in GitHub Actions
    • Knowledge check
    • Summary
  • Module 12: Module 12: Manage software delivery by using a release based workflow on GitHub
    • Introduction
    • What is a release based workflow?
    • Exercise - Create a release based workflow
    • Knowledge check
    • Summary
  • Module 13: Module 13: Build continuous integration (CI) workflows by using GitHub Actions
    • Introduction
    • How do I use GitHub Actions to create workflows for CI?
    • Customize your workflow with environment variables and artifact data
    • Exercise - Create the CI workflow on GitHub
    • Knowledge check
    • Summary
  • Module 14: Module 14: Build and deploy applications to Azure by using GitHub Actions
    • Introduction
    • How do I use GitHub Actions to deploy to Azure?
    • Remove artifacts, create status badges, and configure environment protections
    • Exercise - Create a workflow that deploys a web app to Azure
    • Knowledge check
    • Summary
  • Module 15: Module 15: Implement a code workflow in your build pipeline by using Git and GitHub
    • Introduction
    • Choose a code flow strategy
    • Exercise - Set up your Azure DevOps environment
    • Exercise - Create a pull request
    • Exercise - Push a change through the pipeline
    • Exercise - Add a build badge
    • Exercise - Track your build history
    • Exercise - Add a rule to require a review
    • Exercise - Clean up your Azure DevOps environment
    • Summary

Reviews

Start your review of Manage source control

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.