====== Conventions ====== ===== Github ===== ==== Branch Naming ==== === Basic Rules === - Lowercase and Hyphen-separated: Stick to lowercase for branch names and use hyphens to separate words. For instance, feature/new-login or bugfix/header-styling. - Alphanumeric Characters: Use only alphanumeric characters (a-z, 0–9) and hyphens. Avoid punctuation, spaces, underscores, or any non-alphanumeric character. - No Continuous Hyphens: Do not use continuous hyphens. feature--new-login can be confusing and hard to read. - No Trailing Hyphens: Do not end your branch name with a hyphen. For example, feature-new-login- is not a good practice. - Descriptive: The name should be descriptive and concise, ideally reflecting the work done on the branch. === Branch Prefixes === - Feature Branches: These branches are used for developing new features. Use the prefix feature/. For instance, feature/login-system. - Bugfix Branches: These branches are used to fix bugs in the code. Use the prefix bugfix/. For example, bugfix/header-styling. - Hotfix Branches: These branches are made directly from the production branch to fix critical bugs in the production environment. Use the prefix hotfix/. For instance, hotfix/critical-security-issue. - Release Branches: These branches are used to prepare for a new production release. They allow for last-minute dotting of i’s and crossing t’s. Use the prefix release/. For example, release/v1.0.1. ==== Pull Request Conventions ==== === Title === - For a single commit, the title is the subject line of the commit message. - Otherwise, the title should summarize the set of commits. === Description === - Must state the why and the how for the change. - Usually this is the body of your commit message. - Must explain the purpose of the PR, e.g.: - feedback for an initial implementation, - request for comment, - ready to merge. - Explain any context: - is it part of a greater set of changes? - are any concurrent PRs (in other repositories) dependent on this PR?