github.com/client9/goreleaser@v0.17.4-0.20170511023544-27e4b028926d/CONTRIBUTING.md (about)

     1  # Contributing
     2  
     3  By participating to this project, you agree to abide our [code of
     4  conduct](/CODE_OF_CONDUCT.md).
     5  
     6  ## Setup your machine
     7  
     8  `goreleaser` is written in [Go](https://golang.org/).
     9  
    10  Prerequisites are:
    11  
    12  * Build:
    13    * `make`
    14    * [Go 1.8+](http://golang.org/doc/install)
    15  
    16  Clone `goreleaser` from source into `$GOPATH`:
    17  
    18  ```sh
    19  $ go get -d github.com/goreleaser/goreleaser
    20  $ cd $GOPATH/src/github.com/goreleaser/goreleaser
    21  ```
    22  
    23  Install the build and lint dependencies:
    24  
    25  ``` sh
    26  $ make setup
    27  ```
    28  
    29  A good way of making sure everything is all right is running the test suite:
    30  
    31  ``` sh
    32  $ make test
    33  ```
    34  
    35  ## Test your change
    36  
    37  You can create a branch for your changes and try to build from the source as you go:
    38  
    39  ``` sh
    40  $ make build
    41  ```
    42  
    43  When you are satisfied with the changes, we suggest you run:
    44  
    45  ``` sh
    46  $ make ci
    47  ```
    48  
    49  Which runs all the linters and tests.
    50  
    51  ## Submit a pull request
    52  
    53  Push your branch to your `goreleaser` fork and open a pull request against the
    54  master branch.