diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 276f5118..92c274a7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,9 +1,7 @@ # Contributing to Soar - -Thank you for your interest in contributing to Soar! This document provides -guidelines to help make the contribution process smooth and effective for -everyone involved. +Thank you for your interest in contributing to Soar! This document covers the +workflow and conventions that keep the contribution process smooth for everyone. ## Table of Contents @@ -13,40 +11,38 @@ everyone involved. - [Pull Request Process](#pull-request-process) - [Code Style and Quality](#code-style-and-quality) - ## Getting Started -1. **Fork the repository** on GitHub -2. **Clone your fork** locally - ```sh - git clone https://github.com/YOUR-USERNAME/soar.git - cd soar - ``` -3. **Add the upstream remote** - ```sh - git remote add upstream https://github.com/pkgforge/soar.git - ``` +1. **Fork the repository** on GitHub. +2. **Clone your fork** locally: + ```sh + git clone https://github.com/YOUR-USERNAME/soar.git + cd soar + ``` +3. **Add the upstream remote** so you can pull in changes from the main project: + ```sh + git remote add upstream https://github.com/pkgforge/soar.git + ``` ## Development Workflow -1. Create a new branch for your feature or bugfix - -2. Make your changes - -3. Keep your branch updated with the main branch: - ```sh - git pull upstream main --rebase - ``` +1. Create a branch for your feature or bugfix. +2. Make your changes, and add or update tests where it makes sense. +3. Run the [quality checks](#quality-checks) locally. +4. Keep your branch current with upstream: + ```sh + git pull upstream main --rebase + ``` ## Commit Guidelines We follow the [Conventional Commits](https://www.conventionalcommits.org/) -specification for our commit messages. This leads to more readable messages -that are easy to follow when looking through the project history. +specification. It keeps the history readable and easy to follow. ### Commit Message Format -Each commit message consists of a **header**, a **body** and a **footer**: +Each commit message consists of a **header**, an optional **body**, and an +optional **footer**: ``` (): @@ -56,17 +52,14 @@ Each commit message consists of a **header**, a **body** and a **footer**: