MCP HubMCP Hub
스킬 목록으로 돌아가기

manage-git-branches

pjt222
업데이트됨 Yesterday
6 조회
17
2
17
GitHub에서 보기
기타ai

정보

이 Claude Skill은 일관된 네이밍 규칙에 따라 Git 브랜치를 생성, 전환, 동기화 및 정리하여 개발자가 브랜치를 관리할 수 있도록 돕습니다. 스태시를 사용한 안전한 브랜치 전환, 메인 브랜치와의 기능 브랜치 동기화, 병합된 브랜치 정리 기능을 제공합니다. 새로운 기능 개발 시작, 작업 전환 또는 PR 병합 후 저장소를 깔끔하게 유지하려는 경우에 사용하세요.

빠른 설치

Claude Code

추천
기본
npx skills add pjt222/agent-almanac -a claude-code
플러그인 명령대체
/plugin add https://github.com/pjt222/agent-almanac
Git 클론대체
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/manage-git-branches

Claude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요

문서


name: manage-git-branches description: > 创建、跟踪、切换、同步并清理 Git 分支。涵盖命名规范、使用暂存区安全切换分支、 上游同步,以及清理已合并分支。适用于开始开发新功能或修复问题、在不同分支间 切换任务、将功能分支与 main 保持同步,或在合并 PR 后清理分支。 locale: zh-CN source_locale: en source_commit: 6f65f316 translator: claude-sonnet-4-6 translation_date: 2026-03-16 license: MIT allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: git complexity: intermediate language: multi tags: git, branches, branching-strategy, stash, remote-tracking

管理 Git 分支

按照一致的命名规范创建、切换、同步并清理分支。

适用场景

  • 开始开发新功能或修复问题
  • 在不同分支上的任务之间切换
  • 将功能分支与 main 保持同步
  • 合并 PR 后清理分支
  • 列出和检查分支

输入

  • 必需:至少有一个提交的仓库
  • 可选:分支命名规范(默认:type/description
  • 可选:新分支的基础分支(默认:main
  • 可选:远程名称(默认:origin

步骤

第 1 步:创建功能分支

使用一致的命名规范:

前缀用途示例
feature/新功能feature/add-weighted-mean
fix/问题修复fix/null-pointer-in-parser
docs/文档docs/update-api-reference
refactor/代码重构refactor/extract-validation
chore/维护性工作chore/update-dependencies
test/测试补充test/add-edge-case-coverage
# Create and switch to a new branch from main
git checkout -b feature/add-weighted-mean main

# Or using the newer switch command
git switch -c feature/add-weighted-mean main

预期结果: 新分支已创建并切换到该分支,git branch 显示带星号的新分支。

失败处理: 若基础分支在本地不存在,请先拉取:git fetch origin main && git checkout -b feature/name origin/main

第 2 步:跟踪远程分支

首次推送新分支时设置跟踪关系:

# Push and set upstream tracking
git push -u origin feature/add-weighted-mean

# Check tracking relationship
git branch -vv

检出他人创建的远程分支:

git fetch origin
git checkout feature/their-branch
# Git auto-creates a local tracking branch

预期结果: 本地分支已跟踪对应的远程分支,git branch -vv 显示上游关系。

失败处理: 若自动跟踪失败,手动设置:git branch --set-upstream-to=origin/feature/name feature/name

第 3 步:安全切换分支

切换前确保工作区干净:

# Check for uncommitted changes
git status

若存在未提交的更改,需先提交或暂存:

# Option 1: Commit work in progress
git add <files>
git commit -m "wip: save progress on validation logic"

# Option 2: Stash changes temporarily
git stash push -m "validation work in progress"

# Switch branches
git checkout main

# Later, restore stashed changes
git checkout feature/add-weighted-mean
git stash pop

列出并管理暂存记录:

# List all stashes
git stash list

# Apply a specific stash (without removing it)
git stash apply stash@{1}

# Drop a stash
git stash drop stash@{0}

预期结果: 分支切换成功,工作区反映目标分支的状态,暂存的更改可恢复。

失败处理: 若切换因未提交的更改会被覆盖而被阻止,请先暂存或提交。git stash 默认不能暂存未跟踪的文件,需使用 git stash push -u

第 4 步:与上游同步

保持功能分支与基础分支的同步:

# Fetch latest changes
git fetch origin

# Rebase onto latest main (preferred — keeps linear history)
git rebase origin/main

# Or merge main into your branch (creates merge commit)
git merge origin/main

预期结果: 分支现已包含 main 的最新更改,无冲突或冲突已解决(参见 resolve-git-conflicts)。

失败处理: 若 rebase 产生冲突,解决每个冲突后执行 git rebase --continue。若冲突过于复杂,使用 git rebase --abort 中止,改用 git merge origin/main

第 5 步:清理已合并分支

PR 合并后,删除陈旧分支:

# Delete a local branch that has been merged
git branch -d feature/add-weighted-mean

# Delete a local branch (force, even if not merged)
git branch -D feature/abandoned-experiment

# Delete a remote branch
git push origin --delete feature/add-weighted-mean

# Prune remote-tracking references for deleted remote branches
git fetch --prune

预期结果: 已合并的分支在本地和远程均被删除,git branch 只显示活跃分支。

失败处理: git branch -d 拒绝删除未合并的分支。若分支通过 GitHub 上的 squash merge 合并,Git 可能无法识别为已合并状态,确认工作已保存后可使用 git branch -D 强制删除。

第 6 步:列出并检查分支

# List local branches
git branch

# List all branches (local and remote)
git branch -a

# List branches with last commit info
git branch -v

# List branches merged into main
git branch --merged main

# List branches NOT yet merged
git branch --no-merged main

# See which remote branch each local branch tracks
git branch -vv

预期结果: 清晰查看所有分支、其状态及跟踪关系。

失败处理: 若远程分支显示陈旧,运行 git fetch --prune 清理对已删除远程分支的引用。

验证清单

  • 分支名称遵循已约定的命名规范
  • 功能分支从正确的基础分支创建
  • 本地分支跟踪对应的远程分支
  • 已合并的分支在本地和远程均已清理
  • 切换分支前工作区干净
  • 暂存的更改未遗留孤立

常见问题

  • 直接在 main 上工作:应始终创建功能分支。直接提交到 main 会使 PR 创建和协作变得困难。
  • 分支前忘记拉取:从陈旧的本地 main 创建分支意味着起点已落后。请始终先执行 git fetch origin
  • 长期存活的分支:存活数周的功能分支会积累大量合并冲突,应频繁同步并保持分支短期存活。
  • 孤立的暂存记录git stash 是临时存储,不要将其用于长期工作,应改为提交或创建分支。
  • 删除未合并的工作git branch -D 是破坏性操作。强制删除前请用 git log branch-name 核实。
  • 未清理远程引用:GitHub 上删除的远程分支在本地仍会显示,直到执行 git fetch --prune

相关技能

  • commit-changes — 在分支上提交工作
  • create-pull-request — 从功能分支创建 PR
  • resolve-git-conflicts — 处理同步过程中的冲突
  • configure-git-repository — 仓库设置与分支策略

GitHub 저장소

pjt222/agent-almanac
경로: i18n/zh-CN/skills/manage-git-branches
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

연관 스킬

llamaguard

기타

LlamaGuard는 폭력 및 혐오 발언 등 6가지 안전 범주에서 LLM 입력과 출력을 조정하기 위한 Meta의 70-80억 파라미터 모델입니다. 94-95% 정확도를 제공하며 vLLM, Hugging Face 또는 Amazon SageMaker를 사용해 배포할 수 있습니다. 이 기술을 사용하여 AI 애플리케이션에 콘텐츠 필터링 및 안전 가드레일을 손쉽게 통합하세요.

스킬 보기

cost-optimization

기타

이 Claude Skill은 리소스 적정화, 태깅 전략, 지출 분석을 통해 개발자들이 클라우드 비용을 최적화할 수 있도록 지원합니다. AWS, Azure, GCP에서 클라우드 비용을 절감하고 비용 거버넌스를 구현하기 위한 프레임워크를 제공합니다. 인프라 비용을 분석하거나, 리소스를 적정화하거나, 예산 제약을 충족해야 할 때 사용하세요.

스킬 보기

quantizing-models-bitsandbytes

기타

이 스킬은 bitsandbytes를 사용하여 LLM을 8비트 또는 4비트 정밀도로 양자화하며, 최소한의 정확도 손실로 50-75%의 메모리 감소를 달성합니다. 제한된 GPU 메모리에서 더 큰 모델을 실행하거나 추론을 가속화하는 데 이상적이며, INT8, NF4, FP4와 같은 형식을 지원합니다. 이 스킬은 HuggingFace Transformers와 통합되어 QLoRA 학습 및 8비트 옵티마이저를 가능하게 합니다.

스킬 보기

dispatching-parallel-agents

기타

이 Claude Skill은 3개 이상의 독립적인 문제를 동시에 조사하고 해결하기 위해 다중 에이전트를 배치합니다. 공유 상태나 의존성 없이 해결 가능한 무관련 장애 시나리오에 맞게 설계되었습니다. 핵심 기능은 병렬 문제 해결로, 각 독립 문제 영역마다 하나의 에이전트를 할당하여 효율성을 극대화합니다.

스킬 보기