====== Git Commit Guidelines ====== The EEROS Framework is developed using the following git commit guidelines. ==== 1. Changes are as small and atomic as possible ==== * Commit each fix or task as a separate change * Only commit when a block of work is complete * Commit a new feature as joint commit when the additions belong together Why? Because then it's: * Easy to roll back without affecting other changes * Easy to make other changes on the fly * Easy to merge features to other branches This rules and benefits are based on the following article, which provides additional background information. https://dev.to/this-is-learning/the-power-of-atomic-commits-in-git-how-and-why-to-do-it-54mn ==== 2. Commit messages are well formatted ==== * Separate subject from body with a blank line * Limit the subject line to 50 characters * Capitalize the subject line * Do not end the subject line with a period * Wrap the body at 72 characters (git will not do it automatically) ==== 3. Commit messages are meaningful ==== * Use the imperative mood in the subject line * Use the body to explain what and why vs. how (the code explains how) Why? Because then it's: * Easy to communicate context about a change * Easy to review others commits and pull requests * Easy to write a good change log * Easy to understand why something happened months or years ago This rules and benefits are based on the following article, which provide additional background information. https://chris.beams.io/posts/git-commit/