1
0
mirror of https://github.com/jhillyerd/inbucket.git synced 2025-12-17 09:37:02 +00:00

Add contributing guide

This commit is contained in:
James Hillyerd
2016-12-31 00:35:59 +00:00
parent 2f5d80a521
commit ff481c56c6
2 changed files with 56 additions and 11 deletions

42
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,42 @@
How to Contribute
=================
Inbucket encourages third-party patches. It's valuable to know how other
developers are using the product.
## Getting Started
If you anticipate your issue requiring a large patch, please first submit a
GitHub issue describing the problem or feature. You are also encouraged to
outline the process you would like to use to resolve the issue. I will attempt
to provide validation and/or guidance on your suggested approach.
## Making Changes
Inbucket uses [git-flow] with default options. If you have git-flow installed,
you can run `git flow feature start <topic branch name>`.
Without git-flow, create a topic branch from where you want to base your work:
- This is usually the `develop` branch, example command:
`git checkout origin/develop -b <topic branch name>`
- Only target the `master` branch if the issue is already resolved in
`develop`.
Once you are on your topic branch:
1. Make commits of logical units.
2. Add unit tests to exercise your changes.
3. Run the updated code through `go fmt` and `go vet`.
4. Ensure the code builds and tests with the following commands:
- `go clean ./...`
- `go build ./...`
- `go test ./...`
## Thanks
Thank you for contributing to Inbucket!
[git-flow]: https://github.com/nvie/gitflow

View File

@@ -1,5 +1,6 @@
Inbucket [![Build Status](https://travis-ci.org/jhillyerd/inbucket.png?branch=master)][Build Status] Inbucket
======== =============================================================================
[![Build Status](https://travis-ci.org/jhillyerd/inbucket.png?branch=master)][Build Status]
Inbucket is an email testing service; it will accept messages for any email Inbucket is an email testing service; it will accept messages for any email
address and make them available via web, REST and POP3. Once compiled, address and make them available via web, REST and POP3. Once compiled,
@@ -8,21 +9,22 @@ are all built in).
Read more at the [Inbucket Website] Read more at the [Inbucket Website]
Development Status
------------------ ## Development Status
Inbucket is currently production quality: it is being used for real work. Inbucket is currently production quality: it is being used for real work.
Please see the [Change Log] and [Issues List] for more details. Please see the [Change Log] and [Issues List] for more details. If you'd like
to contribute code to the project check out [CONTRIBUTING.md].
Homebrew Tap
------------ ## Homebrew Tap
Inbucket has an OS X [Homebrew] tap available as [jhillyerd/inbucket][Homebrew Tap], Inbucket has an OS X [Homebrew] tap available as [jhillyerd/inbucket][Homebrew Tap],
see the `README.md` there for installation instructions. see the `README.md` there for installation instructions.
Building from Source
-------------------- ## Building from Source
You will need a functioning [Go installation][Google Go] for this to work. You will need a functioning [Go installation][Google Go] for this to work.
@@ -41,8 +43,8 @@ the web interface will be available at [localhost:9000](http://localhost:9000/).
The Inbucket website has a more complete guide to The Inbucket website has a more complete guide to
[installing from source][From Source] [installing from source][From Source]
About
----- ## About
Inbucket is written in [Google Go] Inbucket is written in [Google Go]
@@ -51,6 +53,7 @@ version can be found at https://github.com/jhillyerd/inbucket
[Build Status]: https://travis-ci.org/jhillyerd/inbucket [Build Status]: https://travis-ci.org/jhillyerd/inbucket
[Change Log]: https://github.com/jhillyerd/inbucket/blob/master/CHANGELOG.md [Change Log]: https://github.com/jhillyerd/inbucket/blob/master/CHANGELOG.md
[CONTRIBUTING.md]: https://github.com/jhillyerd/inbucket/blob/develop/CONTRIBUTING.md
[From Source]: http://www.inbucket.org/installation/from-source.html [From Source]: http://www.inbucket.org/installation/from-source.html
[Google Go]: http://golang.org/ [Google Go]: http://golang.org/
[Homebrew]: http://brew.sh/ [Homebrew]: http://brew.sh/