managing-git-workflow
Automates git commits, push, and PR creation with context-aware messages and ticket extraction. Use when performing git operations, creating commits/PRs, or when user mentions git, GitHub, commit, push, or pull request.
When & Why to Use This Skill
The Managing Git Workflow skill automates the end-to-end version control process, including context-aware commit message generation, remote pushing, and Pull Request creation. It enhances developer productivity by intelligently extracting ticket numbers from branches and adhering to project-specific language and formatting conventions, ensuring a clean and professional repository history.
Use Cases
- Automated Commit Messaging: Generate descriptive, context-aware commit messages that follow existing project patterns and automatically include ticket IDs (e.g., JIRA/FMT) extracted from branch names.
- Streamlined PR Creation: Execute a single command to handle uncommitted changes, push to the remote repository, and open a Pull Request with an optimized title and description.
- Standardized Git Operations: Maintain consistency across team repositories by using helper scripts that verify branch status and PR existence before performing destructive or redundant actions.
- Multi-language Support: Automatically detect and use the project's primary language for all git-related documentation and messaging to maintain workspace uniformity.
| name | managing-git-workflow |
|---|---|
| description | Automates git commits, push, and PR creation with context-aware messages and ticket extraction. Use when performing git operations, creating commits/PRs, or when user mentions git, GitHub, commit, push, or pull request. |
Managing Git Workflow
Overview
Automates git workflows for commit, push, and PR creation with context-aware message generation and automatic ticket number extraction.
When to Use
- Creating commits with auto-generated messages in project's language
- Pushing changes (with automatic commit if needed)
- Creating PRs (with automatic push and commit if needed)
- When user mentions: git, commit, push, pull request, PR, GitHub
Workflow Selection
| Task | Reference Document | Auto-includes |
|---|---|---|
| Commit only | managing-git-workflow/reference/commit.md |
- |
| Push to remote | managing-git-workflow/reference/push.md |
Commit (if uncommitted changes) |
| Create PR | managing-git-workflow/reference/pr.md |
Push + Commit (if needed) |
Common Principles
Commit Messages:
- Use language specified in project context, prompts, or documentation (default to English if unspecified)
- Follow existing project patterns (analyze with
git log --online -10) - Include ticket numbers (FMT-XXXXX, FLEASVR-XXX, etc.) if found in branch name or changes
Branch Naming:
- Extract ticket numbers from branch names for PR titles
- Use descriptive, concrete names
Helper Scripts:
- Common git operations available in
git-helpers.sh - Use
sourceto load helpers when needed
Quick Reference
# Load helper functions
source $SKILL_DIR/git-helpers.sh
# Check status
has_uncommitted_changes # returns 0 if true
has_unpushed_commits # returns 0 if true
get_current_branch # echoes branch name
check_pr_exists # returns 0 if PR exists
Implementation
For commit workflow: See managing-git-workflow/reference/commit.md
For push workflow: See managing-git-workflow/reference/push.md
For PR workflow: See managing-git-workflow/reference/pr.md
Each reference document provides step-by-step instructions for that specific operation.