jj:split

Split a single commit into multiple function-based commits with one-line messages.

1|Updated Feb 4, 2023
One-click install
npx skills add https://github.com/jbott/nix-config --skill jj-split
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jj:split
Source: https://github.com/jbott/nix-config/tree/main/home-manager/programs/claude-code/skills/jj%3Asplit
Command: npx skills add https://github.com/jbott/nix-config --skill jj-split

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Splitting a commit into multiple commits grouped by functional purpose to improve traceability and review efficiency.

Core Features & Use Cases

  • Split a single commit into multiple commits grouped by function (e.g., core feature, tests, configuration, migrations).
  • Ensure all splits use concise, one-line commit messages for clean history.
  • Guide the user through the grouping process and approvals, adapting to revision history as needed.

Quick Start

Split the current commit into functional groups with one-line messages for each split.

Frequently Asked Questions about jj:split

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a single git commit into multiple function-based commits?

To split a commit, this tool automatically reorganizes a single commit into multiple, function-based commits. It groups changes by purpose such as core feature, tests, or configuration to improve traceability and review efficiency.

What is the best way to separate mixed code changes for version-control traceability?

Separating mixed code changes for version-control traceability is done by grouping file modifications into distinct functional categories. This process creates isolated commits for features, migrations, and tests, enforcing single-line commit messages for each split.

Can I split commits by revision history in jj?

Yes, you can split commits by revision history in jj. The tool supports revision-based splitting and guides you through the grouping process, adapting to revision history while validating user approvals before applying changes.

How does the commit splitting process handle approvals before applying changes?

The commit splitting process handles approvals by validating user consents before applying any changes. It guides you through the grouping process to ensure the reorganized, function-based commits meet your review standards before finalizing the version-control history.

Does the commit splitting tool enforce single-line commit messages?

Yes, the commit splitting tool enforces single-line commit messages. It ensures all splits use concise, one-line commit messages to maintain a clean history and improve code-review efficiency for typical software projects.