From 49ad198e35bd6c41829ddbe55b3eadf6745ba450 Mon Sep 17 00:00:00 2001 From: Pierre Vanduynslager Date: Sun, 7 Jan 2018 15:02:15 -0500 Subject: [PATCH] docs(contrib): add atomic commits requirement --- CONTRIBUTING.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2ffae9804c..5cf37570b4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,7 +3,6 @@ ✨ Thanks for contributing to **semantic-release**! ✨ As a contributor, here are the guidelines we would like you to follow: - - [Code of conduct](#code-of-conduct) - [How can I contribute?](#how-can-i-contribute) - [Using the issue tracker](#using-the-issue-tracker) @@ -119,6 +118,15 @@ To ensure consistency and quality all documentation modification must: ### Commit message guidelines +#### Atomic commits + +If possible, make [atomic commits](https://en.wikipedia.org/wiki/Atomic_commit), which means: +- a commit should contain exactly one self-contained functional change +- a functional change should be contained in exactly one commit +- a commit should not create an inconsistent state (such as test errors, linting errors, partial fix, feature with documentation etc...) + +A complex feature can be broken down into multiple commits as long as each one keep a consistent state and consist of a self-contained change. + #### Commit message format Each commit message consists of a **header**, a **body** and a **footer**. The header has a special format that includes a **type**, a **scope** and a **subject**: