git-sync
Stage all changes, generate a short commit message, commit, and push. Use when asked to sync changes or run git add/commit/push with an auto-generated concise commit message.
When & Why to Use This Skill
The git-sync Claude skill automates the essential version control workflow by staging changes, generating intelligent, context-aware commit messages based on code diffs, and pushing updates to remote repositories. It serves as a powerful productivity booster for developers, ensuring consistent Git practices and reducing the manual overhead of routine repository synchronization.
Use Cases
- Rapid Development Sync: Quickly stage, commit, and push iterative changes to a remote branch using a single natural language command, eliminating the need for repetitive manual Git CLI entries.
- AI-Powered Commit Documentation: Automatically generate concise and descriptive commit messages that accurately reflect code changes, maintaining a clean and professional repository history without manual drafting.
- Streamlined Workflow Automation: Simplify the 'add-commit-push' cycle for developers and engineers, ensuring that local work is safely backed up to upstream repositories with minimal friction.
| name | git-sync |
|---|---|
| description | Stage all changes, generate a short commit message, commit, and push. Use when asked to sync changes or run git add/commit/push with an auto-generated concise commit message. |
Git Sync
Overview
Sync local changes by staging everything, generating a short commit message from the diff, committing, and pushing.
Workflow
- Inspect the repo.
- Run
git status --short. - Skim
git diff --statandgit diffto understand the main change.
- Run
- If there are no changes, report that the working tree is clean and stop.
- Generate a concise commit message.
- Keep it short (roughly <= 50 chars), imperative, no trailing period.
- Focus on the primary change; add a brief scope only if obvious.
- Execute the sync.
git add .git commit -m "<message>"git push
- If push fails due to missing upstream, use
git push -u origin <branch>after confirming the branch name.