Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 3.68 KB

contributions.md

File metadata and controls

66 lines (46 loc) · 3.68 KB

Contributions

If you are on this page it means you are most likely interested in contributing to a software project in this organization. We are happy to see that you have an interest in our team and that you are helping us build out our systems! In order to stay organized and avoid introducing bugs into our source code we have created a protocol that must be followed by all contributors when modifying the codebase.

Overview

The Aero software team is adopting a Kanban, feature-branch development workflow. Each repository has a project Kanban conisting of github issues. Issues represent features, bugs, and enhancements and are labelled as such. Each issue is part of a milestone which is defined on the organization level. Feature branches are created for each issue.

The process of contributing can be broken up into these simple steps. Each step is defined in a higher resolution through this document.

  1. Create or Assign Issue
  2. Create Feature Branch
  3. Develop Feature Branch
  4. Rebase/Merge Feature Branch
  5. Create Pull Request
  6. Code Review (Iterative Process)
  7. Document Issue
  8. Merge Feature Branch

Issues

  • What are github issues? A github issue is a task with a detailed description of what must be done in order to complete that task. For Aero each branch that is created will have a corresponding issue. Issues are labelled as either a feature, bug, or an enhancement depending on what label best suites the task description.

  • making a new issue

new-issue

new-issue

Feature Branch

  • git checkout -b [feature_branch_name]

Coding

  • Talk about any coding conventions used in aero ie. obc structure

Rebase or Merge

Prior to a pull request feature branch must be either

  • rebased onto master
    • git rebase master
  • or the master can be merged into the feature branch and then feature branch can be merged into master.
    • git merge master
    • git checkout master
    • git merge [feature_branch_name]

Pull Request

Document

  • While waiting for peer review, document any details related to the new feature that may be valuable for others to be aware of

Merge

  • After the pull request has been approved by at least 2 peers (one owner and one member), merge the branch
    • Show screen shots of merging