Contributing Workflow


By participating in this project, you agree to abide our code of conduct.

Set up your machine

golangci-lint is written in Go.


Fork and clone golangci-lint repository.

A good way of making sure everything is all right is running the following:

make build
./golangci-lint run -v

Test your change

When you are satisfied with the changes, we suggest you run:

$ make test

Which runs all the linters and tests.

Create or update parameters for docs

Add your new or updated parameters to .golangci.next.reference.yml so they will be shown in the docs

Submit a pull request

Push your branch to your golangci-lint fork and open a pull request against the master branch.

Pull request checks

First, please, accept CLA - CLA assistant will make a comment on the pull request about it.

Also, we run a few checks in CI by using GitHub Actions, you can see them here.

New releases

First, see our versioning policy.

To make a new release create a tag vx.y.z. Don't forget to add zero patch version for a new minor release, e.g. v1.99.0. A GitHub Action workflow will start building and publishing release after that.

After making a release you need to update:

  1. GitHub Action config by running:
make assets/github-action-config.json
  1. Contributors list:
make update_contributors_list # may take 15 min
Edit this page on GitHub