Merge pull request #242 from hyperium/contributing
chore(git): add a CONTRIBUTING.md
This commit is contained in:
		
							
								
								
									
										73
									
								
								CONTRIBUTING.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										73
									
								
								CONTRIBUTING.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,73 @@ | |||||||
|  | # Contributing to Hyper | ||||||
|  |  | ||||||
|  | You want to contribute? You're awesome! When submitting a Pull Request, please have your commits follow these guidelines: | ||||||
|  |  | ||||||
|  | ## Git Commit Guidelines | ||||||
|  |  | ||||||
|  | These guidelines have been copied from the [AngularJS](https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#-git-commit-guidelines) | ||||||
|  | project. | ||||||
|  |  | ||||||
|  | We have very precise rules over how our git commit messages can be formatted.  This leads to **more | ||||||
|  | readable messages** that are easy to follow when looking through the **project history**.  But also, | ||||||
|  | we use the git commit messages to **generate the change log**. | ||||||
|  |  | ||||||
|  | ### Commit Message Format | ||||||
|  | Each commit message consists of a **header**, a **body** and a **footer**.  The header has a special | ||||||
|  | format that includes a **type**, a **scope** and a **subject**: | ||||||
|  |  | ||||||
|  | `` | ||||||
|  | <type>(<scope>): <subject> | ||||||
|  | <BLANK LINE> | ||||||
|  | <body> | ||||||
|  | <BLANK LINE> | ||||||
|  | <footer> | ||||||
|  | `` | ||||||
|  |  | ||||||
|  | Any line of the commit message cannot be longer 100 characters! This allows the message to be easier | ||||||
|  | to read on github as well as in various git tools. | ||||||
|  |  | ||||||
|  | ### Type | ||||||
|  | Must be one of the following: | ||||||
|  |  | ||||||
|  | * **feat**: A new feature | ||||||
|  | * **fix**: A bug fix | ||||||
|  | * **docs**: Documentation only changes | ||||||
|  | * **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing | ||||||
|  |   semi-colons, etc) | ||||||
|  | * **refactor**: A code change that neither fixes a bug or adds a feature | ||||||
|  | * **perf**: A code change that improves performance | ||||||
|  | * **test**: Adding missing tests | ||||||
|  | * **chore**: Changes to the build process or auxiliary tools and libraries such as documentation | ||||||
|  |     generation | ||||||
|  |  | ||||||
|  | ### Scope | ||||||
|  | The scope should refer to a module in hyper that is being touched. Examples: | ||||||
|  |  | ||||||
|  | * headers | ||||||
|  | * client | ||||||
|  | * server | ||||||
|  | * http | ||||||
|  | * method | ||||||
|  | * net | ||||||
|  | * status | ||||||
|  | * version | ||||||
|  |  | ||||||
|  | ### Subject | ||||||
|  | The subject contains succinct description of the change: | ||||||
|  |  | ||||||
|  | * use the imperative, present tense: "change" not "changed" nor "changes" | ||||||
|  | * don't capitalize first letter | ||||||
|  | * no dot (.) at the end | ||||||
|  |  | ||||||
|  | ###Body | ||||||
|  | Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes" | ||||||
|  | The body should include the motivation for the change and contrast this with previous behavior. | ||||||
|  |  | ||||||
|  | ###Footer | ||||||
|  | The footer should contain any information about **Breaking Changes** and is also the place to | ||||||
|  | reference GitHub issues that this commit **Closes**. | ||||||
|  |  | ||||||
|  |  | ||||||
|  | A detailed explanation can be found in this [document][commit-message-format]. | ||||||
|  |  | ||||||
|  | [commit-message-format]: https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/edit# | ||||||
		Reference in New Issue
	
	Block a user