di-sukharev / di-sukharev/opencommit

One message for a group of x files

Open
#13 3 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
7.5k
Forks
445
Avg merge
18m
Merged PRs (30d)
2

Description

Would be nice to have the opportunity to configure a unique message for a batch of files.

Concrete example:

In the exampel below, I introduced a new enum and started using it inside 4 existing files. Then I would like to have a single message in a single commit that is simply "refactor: added SvgElementType constants"

So instead of:

│
◇  4 staged files:
  src/features/Picture/screens/CanvasEdit/SvgCanvasDrawMode.js
  src/features/Picture/screens/CanvasEdit/SvgViewer.js
  src/features/Picture/screens/CanvasEdit/__tests__/SvgViewer.test.js
  src/features/Picture/screens/CanvasEdit/constants.js
│
◇  📝 Commit message generated
│
└  Commit message:
——————————————————
feat(SvgCanvasDrawMode.js): add SvgElementType constant to newElement object
feat(SvgViewer.js): add support for SvgElementType constants in ELEMENT_VIEWERS map

test(SvgViewer.test.js): add tests for SvgElementType constants
feat(constants.js): add SvgElementType constants for SVG elements
——————————————————

│
◇  Confirm the commit message
│  No
│
└  ✖ process cancelled

I would like something generating:

  • git commit -m"refactor: added SvgElementType constants"

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Review the current staged-file prompt and commit-command flow, then determine how a single user-provided message should be configured or selected for a batch commit. Done means the example produces one commit message and preserves the existing flow for other commits.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, javascript
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.