返回 Skill 列表
extension
分类: 开发与工程无需 API Key

managing-git-workflow

自动化git提交、推送和PR创建,使用上下文感知的消息和工单提取。在执行git操作、创建提交/PR或用户提到git、GitHub、提交、推送或拉取请求时使用。

person作者: jakexiaohubgithub

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 source to 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.