YoVDO

Build community-driven software projects on GitHub

Offered By: Microsoft via Microsoft Learn

Tags

GitHub Courses

Course Description

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 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 3: Learn to create a successful open-source program by establishing contributor guidance, following proven processes, and leveraging community standards.
  • In this module, you will:

    • Assess your organization's existing open-source efforts
    • Establish the goals of an open-source program
    • Create a repository for your open-source program, complete with contributing and communication guidelines, codes of conduct, templates, and maintainer guides
    • Abide by existing open-source licenses
    • Choose a license for releasing an open-source project
  • Module 4: 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 5: 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 6: 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 7: Learn how to contribute to an open-source project on GitHub.
  • In this module, you will learn how to:

    • Find open-source projects and tasks to contribute to in GitHub.
    • Create pull requests to open-source projects.
    • Implement best practices to communicate with open-source maintainers and perform code reviews.
    • Find and engage with open-source communities.

Syllabus

  • Module 1: Introduction to GitHub
    • Introduction
    • What is GitHub?
    • Exercise - A guided tour of GitHub
    • Knowledge check
    • Summary
  • Module 2: Manage an InnerSource program by using GitHub
    • Introduction
    • How to manage a successful InnerSource program
    • Exercise - InnerSource fundamentals
    • Knowledge check
    • Summary
  • Module 3: Create an open-source program by using GitHub best practices
    • Introduction
    • How to establish an open-source program
    • Exercise - Create an open-source program
    • Describe the benefits of the open-source community
    • Knowledge check
    • Summary
  • Module 4: 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 5: 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 6: 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 7: Contribute to an open-source project on GitHub
    • Introduction
    • Identify where you can help
    • Contribute to an open-source repository
    • Exercise - Create your first pull request
    • Next steps
    • Knowledge check
    • Summary

Tags

Related Courses

Introduction to Agile Software Development: Tools & Techniques
University of California, Berkeley via edX
Advanced Topics and Techniques in Agile Software Development
University of California, Berkeley via edX
The Data Scientist’s Toolbox
Johns Hopkins University via Coursera
How to Use Git and GitHub
Udacity
Desarrollo de Videojuegos 3D en Unity: Una Introducción
Universidad de los Andes via Coursera