46 lines
1.3 KiB
Markdown
46 lines
1.3 KiB
Markdown
|
Contributing
|
||
|
============
|
||
|
|
||
|
Please use this guide before making any contributions to this repository.
|
||
|
|
||
|
Preliminary
|
||
|
-----------
|
||
|
|
||
|
* All code **must** be [`gofmt`](https://golang.org/cmd/gofmt/)'d, [`golint`](https://github.com/golang/lint)'d and [`go vet`](https://golang.org/cmd/vet/)'d before being committed.
|
||
|
* Code **should** have test coverage to ensure its correctness.
|
||
|
|
||
|
PRs
|
||
|
---
|
||
|
|
||
|
**Commits**
|
||
|
|
||
|
Keep individual commits descriptive. Prefix them with the collector name and a
|
||
|
colon. Anyone viewing the git history should be able to determine from those
|
||
|
first 80 characters, the body of the commit. Feel free to expand further on
|
||
|
the commit but keep the first 80 characters on point.
|
||
|
|
||
|
Good Commit:
|
||
|
|
||
|
```
|
||
|
monitor: expose metrics for clock skew
|
||
|
- scrape monitor's skew value from ceph's status
|
||
|
```
|
||
|
|
||
|
Bad Commit:
|
||
|
|
||
|
```
|
||
|
new monitor metrics
|
||
|
```
|
||
|
|
||
|
Use your own discretion when deciding whether or not to squash multiple commits
|
||
|
in a PR to a single commit. However, each commit should contain a single,
|
||
|
logical unit of change, and a descriptive message.
|
||
|
|
||
|
Resources
|
||
|
---------
|
||
|
|
||
|
* [Effective Go](https://golang.org/doc/effective_go.html)
|
||
|
* [Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments)
|
||
|
* [How to Write Go Code](https://golang.org/doc/code.html)
|
||
|
* [Twelve Go Best Practices](https://talks.golang.org/2013/bestpractices.slide)
|