commit
Stage and commit changes to a Git repository with customized options like message reuse, amend, GPG signing, and path-specific commits using the MCP Git server.
Instructions
Commit staged changes to the git repository.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
all | No | Automatically stage modified and deleted files (-a, --all) | |
allowEmpty | No | Allow empty commits (--allow-empty) | |
allowEmptyMessage | No | Allow empty commit messages (--allow-empty-message) | |
amend | No | Amend the previous commit (--amend) | |
author | No | Override author (--author) | |
cleanup | No | Cleanup mode (--cleanup) | |
date | No | Override author date (--date) | |
dryRun | No | Show what would be committed (--dry-run) | |
file | No | Read commit message from file (-F, --file) | |
fixup | No | Create fixup commit for specified commit (--fixup) | |
gpgSign | No | GPG sign commit (-S, --gpg-sign) | |
include | No | Include given paths in addition to index (-i, --include) | |
message | Yes | Commit message (-m, --message) | |
noGpgSign | No | Do not GPG sign commit (--no-gpg-sign) | |
noStatus | No | Do not include status in commit message template (--no-status) | |
noVerify | No | Bypass pre-commit and commit-msg hooks (-n, --no-verify) | |
only | No | Commit only specified paths (-o, --only) | |
pathspec | No | Limit commit to specified paths | |
quiet | No | Suppress commit summary message (-q, --quiet) | |
reeditMessage | No | Like reuseMessage but invoke editor (-c, --reedit-message) | |
repoPath | Yes | Absolute path to the git repository | |
reuseMessage | No | Reuse message from existing commit (-C, --reuse-message) | |
squash | No | Create squash commit for specified commit (--squash) | |
trailers | No | Add trailers to commit message (--trailer) | |
verbose | No | Show unified diff of changes (-v, --verbose) |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"all": {
"description": "Automatically stage modified and deleted files (-a, --all)",
"type": "boolean"
},
"allowEmpty": {
"description": "Allow empty commits (--allow-empty)",
"type": "boolean"
},
"allowEmptyMessage": {
"description": "Allow empty commit messages (--allow-empty-message)",
"type": "boolean"
},
"amend": {
"description": "Amend the previous commit (--amend)",
"type": "boolean"
},
"author": {
"description": "Override author (--author)",
"type": "string"
},
"cleanup": {
"description": "Cleanup mode (--cleanup)",
"enum": [
"strip",
"whitespace",
"verbatim",
"scissors",
"default"
],
"type": "string"
},
"date": {
"description": "Override author date (--date)",
"type": "string"
},
"dryRun": {
"description": "Show what would be committed (--dry-run)",
"type": "boolean"
},
"file": {
"description": "Read commit message from file (-F, --file)",
"type": "string"
},
"fixup": {
"description": "Create fixup commit for specified commit (--fixup)",
"type": "string"
},
"gpgSign": {
"description": "GPG sign commit (-S, --gpg-sign)",
"type": [
"boolean",
"string"
]
},
"include": {
"description": "Include given paths in addition to index (-i, --include)",
"type": "boolean"
},
"message": {
"description": "Commit message (-m, --message)",
"type": "string"
},
"noGpgSign": {
"description": "Do not GPG sign commit (--no-gpg-sign)",
"type": "boolean"
},
"noStatus": {
"description": "Do not include status in commit message template (--no-status)",
"type": "boolean"
},
"noVerify": {
"description": "Bypass pre-commit and commit-msg hooks (-n, --no-verify)",
"type": "boolean"
},
"only": {
"description": "Commit only specified paths (-o, --only)",
"type": "boolean"
},
"pathspec": {
"description": "Limit commit to specified paths",
"items": {
"type": "string"
},
"type": "array"
},
"quiet": {
"description": "Suppress commit summary message (-q, --quiet)",
"type": "boolean"
},
"reeditMessage": {
"description": "Like reuseMessage but invoke editor (-c, --reedit-message)",
"type": "string"
},
"repoPath": {
"description": "Absolute path to the git repository",
"type": "string"
},
"reuseMessage": {
"description": "Reuse message from existing commit (-C, --reuse-message)",
"type": "string"
},
"squash": {
"description": "Create squash commit for specified commit (--squash)",
"type": "string"
},
"trailers": {
"description": "Add trailers to commit message (--trailer)",
"items": {
"type": "string"
},
"type": "array"
},
"verbose": {
"description": "Show unified diff of changes (-v, --verbose)",
"type": "boolean"
}
},
"required": [
"repoPath",
"message"
],
"type": "object"
}