Stepping Up Your GitHub Game

Women Who Code Front End

Cecelia Martinez

@ceceliacreates

Welcome 👋🏽

  • Technical Account Manager @ Cypress.io
  • Lead Volunteer @ Women Who Code Front End 👩🏽‍💻
  • Volunteer @ Out in Tech 🏳️‍🌈 (Women's Committee, Atlanta Chapter Co-Founder)
  • GitHub Stars Program ⭐️
  • @ceceliacreates 🐦

Stepping Up Your GitHub Game: Why?

  • Issues - What problems are we solving?
  • Releases - How do we package our software?
  • Automations - How do we develop and deploy software in efficient, predictable ways?

Understand how software gets made

Stepping Up Your GitHub Game: Issues

GitHub Issues

  • Collect user feedback, feature requests, and bug reports
  • Prioritize work, track progress, and communicate updates

Anatomy of an Issue

  • Title - Describes the issue
  • Content - Details of the issue, typically follows template
  • Timeline - Shows all historical comments and updates
  • Assignees - Developers assigned to work on an issue
  • Labels - Categories or tags that describe the issue
  • Projects - Any projects linked to the issue
  • Milestones - Any milestones linked to the issue
  • Linked pull requests - Automatically link a PR by adding "closes #issueNumber" to the body of the PR
  • Notifications - Users can subscribe to receive updates
  • Participants - Any user that has commented or contributed

GitHub Issues

Issue Templates

  • Help to standardize bug reports and feature requests
  • Ensure all needed information is included

Issue Templates

  • Help to standardize bug reports and feature requests
  • Ensure all needed information is included

Issue Labels

  • Designate issues to planned features, packages, or known issues, or use to describe status and prioritization

Stepping Up Your GitHub Game: Releases

GitHub Releases

  • Use releases to package and version your software
  • Include release notes and links to binary files
  • Based on Git tags - designate a point in time in the history of your code repository

GitHub Releases

  • Create a release from an existing tag OR
  • Create a new release and add tag

Stepping Up Your GitHub Game: Automations

GitHub Actions

  • Automate tasks related to your repository
  • Build complex workflows or add single actions
  • Triggered by events like a push to a branch or scheduled

GitHub Actions

  • Can manage deployments, branch updates, labels, issues, and even integrate with third parties

GitHub Actions

  • Use pre-built GitHub Actions, modify, or create your own

Stepping Up Your GitHub Game: Practice

GitHub Practice

  • Issues
    • Use issues to track work on your own projects
    • Create helpful issues in open-source projects 
    • Link your pull requests to issues to automatically close
    • Create an issue template for your own project

GitHub Practice

  • Releases
    • Read changelogs for open-source tools and understand how they version and release
    • Release versions of your own projects to understand the differences between MAJOR, MINOR, and PATCH

GitHub Practice

  • Automations
    • Set up workflow actions for your own projects
    • Modify an existing GitHub Action

 Resources

Q&A

Stepping Up Your GitHub Game

By Cecelia Martinez

Stepping Up Your GitHub Game

Presentation for Women Who Code Front End. If you've used GitHub for learning and personal projects, you're probably familiar with concepts like forking, creating branches, and pull requests. In this webinar, learn how to utilize more GitHub features the same way production teams do! We'll be evaluating major OSS repositories to better understand GitHub issues, releases, and automations to step up your GitHub game. Video recording unavailable.

  • 2,240