REPOMATIC-GIT-COMMIT-PUSH(1) REPOMATIC-GIT-COMMIT-PUSH(1)

repomatic git-commit-push - Commit files and push, rebasing on rejection

repomatic git-commit-push [OPTIONS] [PATHS]...

Commit the given files and push them to a remote branch.

Idempotent: exits successfully without creating a commit when the files are unchanged. A rejected push (something else pushed meanwhile) is retried after rebasing onto the fresh remote tip, so release jobs can publish generated files to the default branch without racing other pushes. Works from a detached HEAD.

With --all-changes, everything the working tree carries is staged rather than a named list. Reserved for a job whose writers are the steps right before it and whose output paths only its configuration knows.

[PATHS]...

Commit message.
[required]
Remote to push to.
Remote branch to push to.
Stage every change in the working tree instead of named files, for a job whose output paths come from configuration.
Show this message and exit.

Commit message.
Remote to push to.
Remote branch to push to.
Stage every change in the working tree instead of named files, for a job whose output paths come from configuration.
Show this message and exit.

0
Success.
1
A runtime error, or an aborted prompt (Ctrl-C, a declined confirmation).
2
A usage error: unknown option, invalid value, missing operand, or an unparsable configuration file.

Commit two files and push

repomatic git\-commit\-push \-\-message "Record v1.2.3 binaries" docs/binaries.md docs/assets/virustotal\-scans.csv

Commit every change in the tree

repomatic git\-commit\-push \-\-message "Sample star counts" \-\-all\-changes

Kevin Deldycke

2026-09-14 7.15.1.dev0