Skip to content

Commit and Pull Request Protocols

Shawn P. Serbin edited this page Jun 5, 2017 · 9 revisions

Commit Protocol

Version control is the living history of the project. It not only provides backups and a way to share changes, but is a critical component of scientific reproducibility of results by the wider community and helps future developers understand the code. Good commit messages are a essential to ensure the history of the project is useful. Messages should follow the template below, with an emphasis on the why of a set of changes, not just the what. It only take as few seconds to minutes to fill out the template, and can save future developers, including future you, hours to days in understanding the code.

Commit Template


[ Provide a general summary of your changes in the Title above ]

Description

[ Describe your changes in detail ]

Motivation and Context

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My change requires a change to the documentation.
  • I have updated the CHANGELOG.md.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Clone this wiki locally