mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-01-08 06:12:55 +00:00
64 lines
2.3 KiB
Markdown
64 lines
2.3 KiB
Markdown
# Contributing to GreptimeDB
|
|
|
|
Much appreciate for your interest in contributing to GreptimeDB! This document list some guidelines for contributing to our code base.
|
|
|
|
To learn about the design of GreptimeDB, please refer to the [design docs](https://github.com/GrepTimeTeam/docs).
|
|
|
|
## Pull Requests
|
|
|
|
### Before PR
|
|
- Make sure all unit tests are passed.
|
|
- Make sure all clippy warnings are fixed (you can check it locally by running `cargo clippy --workspace --all-targets -- -D warnings -D clippy::print_stdout -D clippy::print_stderr`).
|
|
|
|
|
|
#### `pre-commit` Hooks
|
|
You could setup the [`pre-commit`](https://pre-commit.com/#plugins) hooks to run these checks on every commit automatically.
|
|
|
|
1. Install `pre-commit`
|
|
```
|
|
$ pip install pre-commit
|
|
```
|
|
or
|
|
```
|
|
$ brew install pre-commit
|
|
```
|
|
|
|
2. Install the `pre-commit` hooks
|
|
```
|
|
$ pre-commit install
|
|
pre-commit installed at .git/hooks/pre-commit
|
|
|
|
$ pre-commit install --hook-type commit-msg
|
|
pre-commit installed at .git/hooks/commit-msg
|
|
|
|
$ pre-commit install --hook-type pre-push
|
|
pre-commit installed at .git/hooks/pre-pus
|
|
```
|
|
|
|
now `pre-commit` will run automatically on `git commit`.
|
|
|
|
|
|
### Title
|
|
|
|
The titles of pull requests should be prefixed with category name listed in [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0)
|
|
like `feat`/`fix`/`doc`, with a concise summary of code change follows. DO NOT use last commit message as pull request title.
|
|
|
|
### Description
|
|
|
|
- If your pull request is small, like a typo fix, feel free to go brief.
|
|
- But if it contains large code change, make sure to state the motivation/design details of this PR so that reviewers can understand what you're trying to do.
|
|
- If the PR contains any breaking change or API change, make sure that is clearly listed in your description.
|
|
|
|
### Commit Messages
|
|
|
|
All commit messages SHOULD adhere to the [Conventional Commits specification](https://conventionalcommits.org/).
|
|
|
|
## Getting help
|
|
|
|
There are many ways to get help when you're stuck. It is recommended to ask for help by opening an issue, with a detailed description
|
|
of what you were trying to do and what went wrong. You can also reach for help in our Slack channel.
|
|
|
|
|
|
## Bug report
|
|
To report a bug or a security issue, you can [open a new GitHub issue](https://github.com/GrepTimeTeam/greptimedb/issues/new).
|