Skip to main content

commits

Create, amend, or rename IntelliJ commits and write commit messages.

Source facts

Repository
JetBrains/intellij-community
Last source activity
August 11, 2026 at 06:27
Detected SKILL.md language
English
Stars
20,445
Forks
6,009

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
commits
description
Create, amend, or rename IntelliJ commits and write commit messages.
<!-- Generated by community/.ai/render-guides.mjs; edit community/.agents/skills/commits/SKILL.md --> # Commits SafePush/Patronus rejects malformed commit messages, so a bad subject line costs a CI round trip. ## Subject line ```text IDEA-12345 <subject> # behavioral change — ticket, no subsystem prefix <label> <subsystem>: <subject> # clearly non-behavioral change ``` - A behavioral change needs a YouTrack ticket. If you are unsure whether it is behavioral, it is. - Labels: `tests`, `cleanup`, `refactor`, `docs`, `format`, `style`, `setup`, `misc`. - Never begin a subject with `WIP`, `fixup!`, `squash!`, or `amend!`, and never use Conventional Commits (`fix(scope): …`). ## Body Write one for every change except the mechanical ones (typo, import, format) — including non-production ones. Say why the change was made and what was decided; the diff already shows what changed. A requested suffix such as `IJ-MR-100` goes in its own trailing paragraph. ## Safe message input Pass a multiline commit message through stdin with `-F -` and a quoted heredoc: ```bash git commit -F - <<'EOF' IDEA-12345 concise subject Explain why the change was made and what was decided. EOF ``` Do not stage commit messages in `/tmp`, `/private/tmp`, or another path outside the workspace. That can require an extra filesystem-access approval and leaves a plaintext artifact behind. If a reusable draft is genuinely needed, keep it under the repository's gitignored `out/` directory, for example `out/commit-message.txt`. ## Before writing 1. `git status --short` and `git diff --stat` for scope. Read the full diff only for changes you did not make yourself in this session, and file by file when it is large. 2. One commit does one thing — no cleanup or refactoring mixed into a behavior change. When unsure, split. ## Examples ```text MRI-3589 harden single-flight recursion checks Track active single-flight computations in coroutine context so recursive awaits fail fast in both the owning coroutine and child coroutines. IJ-MR-100 ``` ```text tests cidr: migrate JUnit 5 coverage Convert remaining JUnit 4 suites under cidr/coverage to JUnit 5. Parametrized tests now use @MethodSource instead of the Theories runner. ``` Uncovered case (isolated-commit algorithm, `misc` triage): [2_Commits.md](../../../../docs/IntelliJ-Platform/0_Intro/2_Commits.md). Pushing: use the `safe-push` skill.
View on GitHub