Standards for writing clear, useful GitHub issues in the git-flow-next project.
- Be brief and concise — get to the point quickly
- Lead with a summary — open with 1-2 sentences explaining what this issue is about before any sections
- No emojis — keep the tone professional and scannable
- Minimal formatting — use plain text where possible; don't over-format with bold, blockquotes, or horizontal rules
- Use h3 (
###) for sections — not h1 or h2, which compete with the issue title - Tables and code blocks are fine — when they make things clearer, not for decoration
- Clear and descriptive
- Imperative mood ("Add...", "Fix...", "Update...")
- Specific enough to understand without opening the issue
Good: Add --dry-run option to finish command
Bad: Feature request: dry run
Apply one of these labels when creating an issue:
bug— something isn't working as expectedenhancement— improvement to existing functionality or new feature
Start with a brief summary paragraph, then use ### sections as needed. Not every issue needs all sections — use only what's relevant.
<Brief summary of what's broken and when it happens>
### Steps to Reproduce
1. ...
2. ...
### Expected Behavior
<What should happen>
### Actual Behavior
<What happens instead>
### Environment
- git-flow-next version:
- OS:
- Git version:
<Brief summary of what you want and why>
### <Sections as needed>
Use sections to break down details: proposed behavior, examples,
commands to support, edge cases, etc. Keep it scannable.
Describe the expected behavior as concretely as possible — example commands, expected output, or before/after comparisons help reviewers understand the proposal without ambiguity.
A well-structured enhancement issue — brief intro, h3 sections, a priority table, and code examples showing proposed usage and output:
Title: Add
--dry-runoption to commands that perform more complex actionsBody:
Add a
--dry-run/-nflag to commands that perform complex or destructive actions. When enabled, the command displays all operations that would be performed without actually executing them.
Priority Command Reason Critical finishMulti-stage: merge, tag, update children, delete High deletePermanently removes local/remote branches Medium publishNetwork operation, pushes to remote Medium updateMerge/rebase operations, modifies history Low startSafe operation, but useful for preview # Preview what finish will do git flow feature finish my-feature --dry-run # Short flag (follows Git conventions) git flow release finish v1.0 -nDry-run: git flow feature finish my-feature Target: feature/my-feature -------------------------------------------------- Actions that would be performed: 1. Checkout parent branch 'develop' $ git checkout develop 2. Merge 'feature/my-feature' into 'develop' using merge strategy $ git merge feature/my-feature 3. [!] Delete local branch 'feature/my-feature' $ git branch -d feature/my-feature No changes were made (dry-run mode).
- Wall-of-text descriptions with no structure
- Overly templated issues where most sections are "N/A"
- Emoji-heavy formatting
- h1/h2 headings in the body
- Restating the title in the first line