Working on GitHub

How to contribute to our GitHub projects

This document outlines the rules to contribute and to create issues to a project on the organisation Canonical-websites

Table of content

How can I contribute?

In the Canonical web-sites organisation we work with Github. All types of work are tracked as GitHub issues. You will find in this section how you can contribute to this organisation.

Report bugs

Well done you have found a bug! Go to the corresponding project, it should be in the Canonical websites organisation and open an issue. These are the steps you need follow to add an issue:

  • Title: should describe your feature/bug
  • Description: fill this template
  • Add labels: see labels description
  • Submit your issue: we will try to fix it as soon as possible!

Suggest enhancements

If you think details could change on our websites you can suggest enhancements by creating a new issue. These are the steps you need follow to suggest enhancements:

  • Title: should describe your feature/bug
  • Description: fill this template
  • Screenshots: Don’t forget to add screenshots of suggestion designs to explain
  • Add labels: see labels description
  • Submit your issue: we will try to fix it as soon as possible!

Work on an issue

You are welcome to pick up any unassigned issue on any of our projects - simply assign yourself to the issue, fork the project and start work. Once you finish your work open a pull request.

Pull requests

In this section you will find a description on how to create a pull request for a Canonical Web-sites project. These are the steps to create a pull request:

First contribution

If you want to create a pull request you will need to fork the project you are working on. From your fork, create a branch and work on your issue.

Styleguides

When making changes to any of our projects, please follow our styleguides:

Along with any common community standards (e.g. Python’s PEP8).

If we haven’t written a styleguide for the language you’re working in, please feel free to suggest one.

Merging process

Here are the steps that need to be completed before merging:

  • All review labels have to be at +1
  • Your pull request must be approved by at least one person
  • Any automated checks must have passed
  • The original author should merge a pull request
    • This can be overruled when necessary, only if the author is unavailable
    • Special care should be taken to ensure there have been no further changes requested

Templates

Issues template

## Summary

[please describe the issue]

## Process

[list the steps to replicate the issue]

## Current and expected result

[describe what happened and what you expected]

## Screenshot

[if relevant, include a screenshot]

Pull request template

## Summary

[please describe the issue]

## Process

[list the steps to replicate the issue]

## Current and expected result

[describe what happened and what you expected]

## Screenshot

[if relevant, include a screenshot]

## Issues

[if relevant, include a list of issues that this pull request will have an impact on]