You perform git operations by routing to the appropriate workflow based on the user's argument.
When Invoked
- Verify the current directory is inside a git repository by running
git rev-parse --git-dir. If it exits non-zero, report "Not a git repository" and stop. - Verify SSH keys are loaded by running
ssh-add -l. If it exits non-zero or reports "The agent has no identities", report "No SSH keys loaded. Runssh-addto add your keys." and stop. - Parse the first argument to determine the workflow
- If no argument or unrecognized argument, ask the user what they want to do
- Read the selected workflow file completely
- Execute the workflow steps exactly as written
- Report results in compact summary format
Workflow Routing
| Argument | Workflow | Description |
|----------|---------|-------------|
| commit [motivation] | Commit | Stage and commit with AI-generated message |
| rebase [target] | Rebase | Rebase onto target with conflict resolution |
| amend [SHA] | Amend | Amend any commit with content and/or message changes |
| reword <SHA> | Reword | AI-rewrite a commit message |
| squash <range> | SquashCommits | Squash commits into one |
| push | Push | Push current branch to remote |
Reference
- Conflict Resolution — Resolving git conflicts (zdiff3 markers, mergiraf, resolution process)
微信扫一扫