gitflow-workflow | Skill Performance & Reviews | TopRankSkills

TopRank Skills

Home / Skills / tools / gitflow-workflow

gitflow-workflow

maintained by FradSer

star 207 account_tree 17 verified_user MIT License
bolt View GitHub

name: gitflow-workflow description: Use this skill for GitFlow tasks: starting/finishing features, releases, hotfixes; managing branches; versioning; or general GitFlow operations. user-invocable: false allowed-tools: Read version: 0.1.0

Purpose

All detailed command manuals live under ./references/ and should be consulted when you need exact flags/options.

Required invariants (used by the 6 instruction-type skills)

Preflight

Before any start/finish operation:

  • Confirm working tree is clean (use git status to verify).
  • Identify current branch and verify the branch type matches the operation (feature/*, hotfix/*, release/*).
  • Determine the active workflow preset (Classic GitFlow vs GitHub Flow vs GitLab Flow) to identify correct base/target branches.

Branch naming

  • Use kebab-case and a strict prefix: <type>/<kebab-case> (e.g. feature/user-authentication).

Finish behavior

  • Prefer non-fast-forward merges when finishing (e.g. --no-ff) to preserve a visible integration history, unless the repo workflow config says otherwise.
  • Run tests if available before finishing; fix failures before merging.
  • After finishing hotfix/release, ensure the integration branch receives the changes (often merging back into develop).
  • Delete topic branches locally and remotely after finishing when policy allows.

Changelog generation

When updating CHANGELOG.md during finish-release or finish-hotfix operations, follow these principles:

Core principle: Include all commits that represent user-facing changes since the previous version tag. Exclude internal-only changes (build, CI, tooling) and administrative commits (merges, releases).

Note: The finish-feature operation updates the [Unreleased] section without filtering, as features are already user-facing by nature.

Commit collection process for releases and hotfixes:

  1. Identify the previous version tag (e.g., v1.5.0)
  2. Collect commits: git log --oneline <previous-tag>..HEAD
  3. Filter commits using conventional commit format, applying the user-facing principle:
    • Include: Commits that affect end users, API consumers, or documented behavior (e.g., feat, fix, refactor, docs, perf, deprecate, remove, security)
    • Exclude: Internal tooling (chore, build, ci), test-only changes (test), merge commits, release commits
  4. Map commit types to appropriate Keep a Changelog sections (Added, Changed, Deprecated, Removed, Fixed, Security)
  5. Format entries using present/imperative tense and user-facing language
  6. Merge repetitive items and include sufficient context to understand impact

See ${CLAUDE_PLUGIN_ROOT}/examples/changelog.md for the standard format.

Minimal templates (what the 6 skills assume)

The operation-specific templates have been moved into the corresponding start-* / finish-* skills to keep those tasks self-contained.

Reference index

  • ./references/context-gathering.md
  • ./references/naming-rules.md
  • ./references/workflow-presets.md
  • ./references/versioning-and-tags.md
  • ./references/commands-core.md
  • ./references/commands-topic.md

External References

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!

Skill Details

GitHub Stars 207
GitHub Forks 17
Created Jan 2026
Last Updated 8个月前
tools tools productivity tools

Related Skills

ui-ux-pro-max
chevron_right
planning-with-files
chevron_right
agent-browser
chevron_right
specs-gen
chevron_right
building-agents
chevron_right

Build your own?

Join 12,000+ developers contributing to the Claude ecosystem.