|
2 | 2 |
|
3 | 3 | source{d} go-git project is [Apache 2.0 licensed](LICENSE) and accept
|
4 | 4 | contributions via GitHub pull requests. This document outlines some of the
|
5 |
| -conventions on development workflow, commit message formatting, contact points |
| 5 | +conventions on development workflow, commit message formatting, contact points, |
6 | 6 | and other resources to make it easier to get your contribution accepted.
|
7 | 7 |
|
8 | 8 | ## Certificate of Origin
|
9 | 9 |
|
10 |
| -By contributing to this project you agree to the Developer Certificate of |
11 |
| -Origin (DCO). This document was created by the Linux Kernel community and is a |
| 10 | +By contributing to this project you agree to the [Developer Certificate of |
| 11 | +Origin (DCO)](DCO). This document was created by the Linux Kernel community and is a |
12 | 12 | simple statement that you, as a contributor, have the legal right to make the
|
13 |
| -contribution. See the [DCO](DCO) file for details. |
| 13 | +contribution. |
14 | 14 |
|
15 | 15 | ## Support Channels
|
16 | 16 |
|
17 |
| -Whether you are a user or contributor, official support channels include: |
| 17 | +The official support channels, for both users and contributors, are: |
18 | 18 |
|
19 |
| -- GitHub [issues](https://github.com/src-d/go-git/issues/new) |
20 |
| -- Slack: #go-git room in the [source{d} Slack](http://sourced.tech/) |
| 19 | +- GitHub [issues](https://github.com/src-d/go-git/issues)* |
| 20 | +- Slack: #go-git room in the [source{d} Slack](https://join.slack.com/t/sourced-community/shared_invite/enQtMjc4Njk5MzEyNzM2LTFjNzY4NjEwZGEwMzRiNTM4MzRlMzQ4MmIzZjkwZmZlM2NjODUxZmJjNDI1OTcxNDAyMmZlNmFjODZlNTg0YWM) |
21 | 21 |
|
22 |
| -Before opening a new issue or submitting a new pull request, it's helpful to |
| 22 | +*Before opening a new issue or submitting a new pull request, it's helpful to |
23 | 23 | search the project - it's likely that another user has already reported the
|
24 | 24 | issue you're facing, or it's a known issue that we're already aware of.
|
25 | 25 |
|
26 | 26 |
|
27 | 27 | ## How to Contribute
|
28 | 28 |
|
29 |
| -PRs are the main and exclusive way to contribute to the official go-git project. |
| 29 | +Pull Requests (PRs) are the main and exclusive way to contribute to the official go-git project. |
30 | 30 | In order for a PR to be accepted it needs to pass a list of requirements:
|
31 | 31 |
|
32 | 32 | - You should be able to run the same query using `git`. We don't accept features that are not implemented in the official git implementation.
|
33 |
| -- The expected behavior must match the official git implementation. |
| 33 | +- The expected behavior must match the [official git implementation](https://github.com/git/git). |
34 | 34 | - The actual behavior must be correctly explained with natural language and providing a minimum working example in Go that reproduces it.
|
35 |
| -- In case a PR is submitted, it has to be written in idiomatic Go, formatted properly using gofmt, that compiles without warning and passes all the current tests. |
| 35 | +- All PRs must be written in idiomatic Go, formatted according to [gofmt](https://golang.org/cmd/gofmt/), and without any warnings from [go lint](https://github.com/golang/lint) nor [go vet](https://golang.org/cmd/vet/). |
| 36 | +They should in general include tests, and those shall pass. |
36 | 37 | - If the PR is a bug fix, it has to include a new unit test that fails before the patch is merged.
|
37 | 38 | - If the PR is a new feature, it has to come with a suite of unit tests, that tests the new functionality.
|
38 |
| -- In any case, all the PRs have to pass the personal evaluation of at least one of the maintainers of go-git. |
| 39 | +- In any case, all the PRs have to pass the personal evaluation of at least one of the [maintainers](MAINTAINERS) of go-git. |
39 | 40 |
|
40 | 41 |
|
41 | 42 | ### Format of the commit message
|
42 | 43 |
|
43 |
| -Every commit message should describe what changed, in which context: |
| 44 | +Every commit message should describe what was changed, under which context and, if applicable, the GitHub issue it relates to: |
44 | 45 |
|
45 | 46 | ```
|
46 | 47 | plumbing: packp, Skip argument validations for unknown capabilities. Fixes #623
|
|
0 commit comments