Skip to content

Contributing Guidelines

Tan Jun Rong edited this page Aug 6, 2015 · 6 revisions

Thank you!

First of all thanks for your interest in contributing!

1. Git Message Guide

Prefix your Git message with [FEATURE], [BUGFIX], [CHORE], [DOC], [REFACTOR], [EXAMPLE]. Here are some explanation:

  • [FEATURE]: When a new feature is added to the library
  • [BUGFIX]: When a bug is fixed
  • [CHORE]: Task that doesn't fall into other category and doesn't involve coding.
  • [DOC]: Improve the documentation or correcting an error in the documentation.
  • [REFACTOR]: Clean up unused code, or refactoring.
  • [EXAMPLE]: When an example activity is added to showcase a TourGuide feature.
  • [TEST]: When test is added/edited.

Refer to 1.WHY for the reason behind this.

1.WHY Versions, Features, Fixes, It's confusing...

As this project gets more features and bug fixes, I realized that users can get easily confused which version of TourGuide has which features and bug fixes. Maintaining a CHANGELOG is a way to solve this problem, but it's time consuming to write it, and it is error prone while writing a CHANGELOG, e.g. something might be missed out. Thus, I thought of a solution to this. Write a better Git message. This way, users of TourGuide can git clone the repo and get a clear picture of which version has which features/fixes.

Consider this:

    * | 60fce9b - Add tooltip custom layout setters (3 days ago) 
    | * 817c5c7 - Update version number (4 days ago) 
    | * 9d73837 - Add more steps to README_pushing_to_maven.md (4 days ago) 
    | * ebbc38c - (tag: v1.0.11) Increase version number (4 days ago) 
    | * d4fb423 - Add LeakCanary & MemoryLeakTestActivity to test for mem leak; Fixed memory leak due to AnimatorSet's listeners referencing each other (4 days ago) 
    | * 6b4a192 - Update README_pushing_to_maven.md to include more details steps (4 days ago) 
    | *   d0c153b - Merge pull request #5 from MHDante/master (4 days ago) 

It is hard to tell what are the features/fixes are included before v1.0.11.

But if we name it properly:

    * | 60fce9b - [FEATURE] Add tooltip custom layout setters (3 days ago) 
    | * 817c5c7 - [CHORE] Update version number (4 days ago) 
    | * 9d73837 - [DOC] Add more steps to README_pushing_to_maven.md (4 days ago) 
    | * ebbc38c - [CHORE] (tag: v1.0.11) Increase version number (4 days ago) 
    | * d4fb423 - [BUGFIX] Add LeakCanary & MemoryLeakTestActivity to test for mem leak; Fixed memory leak due to AnimatorSet's listeners referencing each other (4 days ago) 
    | * 6b4a192 - [DOC] Update README_pushing_to_maven.md to include more details steps (4 days ago) 

Users can figure out what has changed in which version.

Clone this wiki locally