summaryrefslogtreecommitdiff
path: root/.gitmessage
diff options
context:
space:
mode:
Diffstat (limited to '.gitmessage')
-rw-r--r--.gitmessage58
1 files changed, 58 insertions, 0 deletions
diff --git a/.gitmessage b/.gitmessage
new file mode 100644
index 0000000..571fb50
--- /dev/null
+++ b/.gitmessage
@@ -0,0 +1,58 @@
+# <type>[optional scope]: <short description> (max 72 chars total) ------>|
+#
+# Types (choose ONE):
+# feat New feature (MINOR bump in SemVer)
+# fix Bug fix (PATCH bump)
+# docs Documentation only (README, man page, comments)
+# style Formatting, whitespace — no logic change
+# refactor Code restructure — no feature/fix
+# perf Performance improvement
+# test Tests only
+# build Build system / dependency changes
+# ci CI/CD configuration
+# chore Maintenance (release commits, tooling)
+# revert Revert a previous commit
+#
+# Scopes (optional, in parentheses after type):
+# core Main script logic / encode_one()
+# preset Preset loading / preset files
+# color Terminal color / NO_COLOR handling
+# cli Option parsing / help / version output
+# skip Codec skip-list handling
+# saving File-size savings logging
+# docs Documentation (man page, README)
+# completion Bash completion script
+#
+# Breaking changes: append ! before the colon → feat(cli)!: ...
+# --------------------------------------------------------------------------
+
+# [blank line — required before body]
+
+# Body (optional): explain WHY, not WHAT. Wrap at 72 chars. ---->|
+#
+# Motivation for the change, background, trade-offs considered, etc.
+# Use multiple paragraphs separated by blank lines if needed.
+
+# [blank line before footers]
+
+# Footers (optional):
+# BREAKING CHANGE: <description of what breaks and how to migrate>
+# Fixes: #<issue>
+# Refs: #<issue>, <commit-sha>
+# Reviewed-by: Name <email>
+# Co-authored-by: Name <email>
+#
+# --------------------------------------------------------------------------
+# Examples:
+#
+# feat(preset): add support for passing raw ffmpeg flags via env var
+#
+# fix(core): prevent tmp file leak when ffprobe exits non-zero
+#
+# docs: add man page and bash completion script
+#
+# feat(cli)!: rename --encodefile to --file-list for clarity
+#
+# BREAKING CHANGE: --encodefile/-f is now --file-list/-F. Update any
+# scripts or aliases that use the old flag.
+# --------------------------------------------------------------------------