Skip to content

Commit

Permalink
docs: add contributing, git, and styleguide docs (#56)
Browse files Browse the repository at this point in the history
  • Loading branch information
0xdeafbeef authored May 14, 2024
2 parents aa876c3 + a1af099 commit ca18b96
Show file tree
Hide file tree
Showing 7 changed files with 1,121 additions and 2 deletions.
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres
to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,13 @@ To interactivly choose what to run:
just
```

To format code:

```bash
just fmt
```


## Prebuilt RocksDB

By default, we compile RocksDB (a C++ project) from source during the build.
Expand Down Expand Up @@ -49,3 +56,4 @@ git checkout v8.10.0
make -j 10 static_lib
export ROCKSDB_LIB_DIR=/path/to/rocksdb
```

32 changes: 32 additions & 0 deletions docs/contributing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
## Pull Requests

All contributions to `tycho` are made via Pull Requests (PRs). Please follow
these steps when creating a PR:

- **Fork the Repository:** Fork the repository or create a new branch in the
repository if you have write access.
- **Commit Structure:** We review each commit separately, and we do not use the
squash-merge strategy. Please manually combine any fixup commits before
sending them for review. Each commit should ideally focus on a single task.
For example, if you need to refactor a function to add a new feature cleanly,
place the refactoring in one commit and the new feature in another. If the
refactoring itself consists of many parts, separate these into individual
commits. Include tests and documentation in the same commit as the code they
test and document. The commit message should describe the changes in the
commit; the PR description can be brief or even empty, but feel free to
include a personal message.
- **Testing:** Ensure that the changes are thoroughly tested. If the PR
introduces a new feature, it should also contain tests for that feature.
- **Draft PRs:** Feel free to submit draft PRs to get early feedback and to
ensure you are on the right track.
- **Commit Naming Convention:** Each commit should follow [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/). This helps us
automatically generate changelogs and version bumps. (todo: implement this)
- **Documentation of Changes:** If your PR introduces a user-observable change (
e.g., a new protocol feature, new configuration option, new Prometheus metric,
etc.), please document it in [CHANGELOG.md](../CHANGELOG.md) in
the `[unreleased]` section.
- **No Merge Policy:** The tycho repository uses
a [no merge policy](./git.md#no-merge-policy). Please rebase your branch on
top of the `master` branch before creating a PR.

Loading

0 comments on commit ca18b96

Please sign in to comment.