Skip to content

Latest commit

 

History

History
168 lines (122 loc) · 8.02 KB

CONTRIBUTING.md

File metadata and controls

168 lines (122 loc) · 8.02 KB

Contributing to GitHub Desktop

👍 🎉 💖 Thanks for your interest! 💖 🎉 👍

The following is a set of guidelines for contributing to GitHub Desktop and its related projects, which are hosted in the Desktop Organization on GitHub. These are just guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.

Note that GitHub Desktop is currently a public beta, so everything is likely to change over time as we learn and refine how we work with the community.

Table Of Contents

What should I know before I get started?

How Can I Contribute?

Additional Notes

What should I know before I get started?

Code of Conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to opensource+desktop@github.com.

The Beta Roadmap

Currently GitHub Desktop is in a public beta, and the team is focused on triaging reported issues and working towards a 1.0 milestone - where the application can be used in place of the classic Mac and Windows applications. You can follow this progress under the Milestones tab.

We're still thinking about where we want to take GitHub Desktop after we reach this 1.0 milestone. If you have ideas or suggestions please read the Suggesting Enhancements section below to understand how to contribute your feedback.

How Can I Contribute?

Reporting Bugs

This section guides you through submitting a bug report for GitHub Desktop. Following these guidelines helps maintainers and the community understand your report 📝, reproduce the behavior 💻 💻, and find related reports 🔎.

Before creating bug reports, please check this list as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible. Fill out the required template, the information it asks for helps us resolve issues faster.

Before Submitting A Bug Report

Perform a cursory search to see if the problem has already been reported. If it does exist, add a :thumbsup: to the issue to indicate this is also an issue for you, and add a comment to the existing issue if there is extra information you can contribute.

How Do I Submit A (Good) Bug Report?

Bugs are tracked as GitHub issues.

Simply create an issue on the GitHub Desktop issue tracker and fill out the provided issue template.

The information we are interested in includes:

  • details about your environment - which build, which operating system
  • details about reproducing the issue - what steps to take, what happens, how often it happens
  • other relevant information - log files, screenshots, etc.

Suggesting Enhancements

This section guides you through submitting an enhancement suggestion for GitHub Desktop, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion 📝 and find related suggestions 🔎.

Before creating enhancement suggestions, please check this list as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please include as many details as possible. Fill in the template, including the steps that you imagine you would take if the feature you're requesting existed.

Before Submitting An Enhancement Suggestion

Perform a cursory search to see if the enhancement has already been suggested. If it has, add a :thumbsup: to indicate your interest in it, or comment if there is additional information you would like to add.

How Do I Submit A (Good) Enhancement Suggestion?

Enhancement suggestions are tracked as GitHub issues.

Simply create an issue on the GitHub Desktop issue tracker and provide the following information:

  • Use a clear and descriptive title for the issue to identify the suggestion.
  • Provide a step-by-step description of the suggested enhancement in as much detail as possible. This additional context helps the maintainers to understand the enhancement from your perspective
  • Explain why this enhancement would be useful to GitHub Desktop users.
  • Include screenshots and animated GIFs if relevant to help you demonstrate the steps or point out the part of GitHub Desktop which the suggestion is related to. You can use this tool to record GIFs on macOS and Windows.
  • List some other applications where this enhancement exists, if applicable.

Accepting PRs

As part of building GitHub Desktop, we'll identify tasks that are good for external contributors to pick up. These tasks:

  • have low impact, or have a known workaround
  • should be addressed
  • have a narrow scope and/or easy reproduction steps
  • can be worked on independent of other tasks

These issues will be labelled as accepting-prs in the repository. If you are interested in contributing to the project, please comment on the issue to let the core team (and the community) know you are interested in the issue.

Additional Notes

Issue and Pull Request Labels

This section lists the labels we use to help us track and manage issues and pull requests.

Type of Issue and Issue State

Label name 🔎 Description
enhancement search Feature requests.
bug search Confirmed bugs or reports that are very likely to be bugs.
more-information-needed search More information needs to be collected about these problems or feature requests (e.g. steps to reproduce).
needs-reproduction search Likely bugs, but haven't been reliably reproduced.
macOS search Issues specific to macOS users.
Windows search Issues specific to Windows users.

Topics

Label name 🔎 Description
accepting-prs search Issues marked as ideal for external contributors.
tech-debt search Issues related to code or architecture decisions.
needs-design-input search Issues that require design input from the core team before the work can be started.

Workflow

Label name 🔎 Description
ready-for-review search Pull Requests that are ready to be reviewed by the maintainers.