mirror of
https://github.com/goreleaser/goreleaser.git
synced 2024-12-31 01:53:50 +02:00
5282dd915f
<!-- Hi, thanks for contributing! Please make sure you read our CONTRIBUTING guide. Also, add tests and the respective documentation changes as well. --> <!-- If applied, this commit will... --> This PR fixes the links to Go and Task installation pages. <!-- Why is this change being made? --> Official go site is now https://go.dev where the old link was automatically redicting. Task's website has been changed and the installation procedure is now on its own page. <!-- # Provide links to any relevant tickets, URLs or other resources -->
78 lines
1.6 KiB
Markdown
78 lines
1.6 KiB
Markdown
# Contributing
|
|
|
|
By participating in this project, you agree to abide our
|
|
[code of conduct](https://github.com/goreleaser/.github/blob/main/CODE_OF_CONDUCT.md).
|
|
|
|
## Set up your machine
|
|
|
|
`goreleaser` is written in [Go](https://golang.org/).
|
|
|
|
Prerequisites:
|
|
|
|
- [Task](https://taskfile.dev/installation)
|
|
- [Go 1.20+](https://go.dev/doc/install)
|
|
|
|
Other things you might need to run the tests:
|
|
|
|
- [cosign](https://github.com/sigstore/cosign)
|
|
- [Docker](https://www.docker.com/)
|
|
- [GPG](https://gnupg.org)
|
|
- [Podman](https://podman.io/)
|
|
- [Snapcraft](https://snapcraft.io/)
|
|
- [Syft](https://github.com/anchore/syft)
|
|
|
|
Clone `goreleaser` anywhere:
|
|
|
|
```sh
|
|
git clone git@github.com:goreleaser/goreleaser.git
|
|
```
|
|
|
|
`cd` into the directory and install the dependencies:
|
|
|
|
```sh
|
|
task setup
|
|
```
|
|
|
|
A good way of making sure everything is all right is running the test suite:
|
|
|
|
```sh
|
|
task test
|
|
```
|
|
|
|
## Test your change
|
|
|
|
You can create a branch for your changes and try to build from the source as you go:
|
|
|
|
```sh
|
|
task build
|
|
```
|
|
|
|
When you are satisfied with the changes, we suggest you run:
|
|
|
|
```sh
|
|
task ci
|
|
```
|
|
|
|
Before you commit the changes, we also suggest you run:
|
|
|
|
```sh
|
|
task fmt
|
|
```
|
|
|
|
## Create a commit
|
|
|
|
Commit messages should be well formatted, and to make that "standardized", we
|
|
are using Conventional Commits.
|
|
|
|
You can follow the documentation on
|
|
[their website](https://www.conventionalcommits.org).
|
|
|
|
## Submit a pull request
|
|
|
|
Push your branch to your `goreleaser` fork and open a pull request against the main branch.
|
|
|
|
## Financial contributions
|
|
|
|
You can contribute in our OpenCollective or to any of the contributors directly.
|
|
See [this page](https://goreleaser.com/sponsors) for more details.
|