Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

finishing-branch整理分支

Agent Skill

finishing-branch 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

220

周安装

9

GitHub Stars

16

下载量

71
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:finishing-branch(整理分支)
来源仓库:https://github.com/krzysztofsurdy/code-virtuoso
仓库路径:skills/finishing-branch
安装命令:
npx skills add https://github.com/krzysztofsurdy/code-virtuoso --skill finishing-branch
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/krzysztofsurdy/code-virtuoso --skill finishing-branch

简介

finishing-branch 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中快速定位候选结果。

  • 适用于分支整理相关的研究检索任务。
  • 通过 npx skills add 命令从 GitHub 仓库安装并使用该技能。
  • 安装前需确认权限范围和维护状态,注意是否涉及联网或文件操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Finishing a Development Branch

The code is written. Tests are green locally. Now what? The gap between "done coding" and "merged to main" is where branches rot, conflicts accumulate, and mistakes happen. This playbook is the systematic bridge: verify, review, integrate, clean up. Every time, in order, nothing skipped.

Never push without green. Never merge without review evidence.

When to Use

  • Implementation is complete and you are ready to integrate
  • You need to decide between merge, squash, rebase, or PR
  • A branch has been sitting and needs to be wrapped up
  • You are finishing work in a worktree and need to clean up
  • You are managing stacked branches and need to land them in order

Quick Start

# Verify everything passes
git diff --stat main...HEAD
make test && make lint && make typecheck

# Push and open a PR (adjust target as needed)
git push -u origin HEAD
gh pr create --fill

If you need more control, follow the phases below.


Phase 1: Working-Tree Sanity

Before anything else, ensure the working tree is in a known-good state.

# Check for uncommitted changes
git status

# Check for forgotten stashes
git stash list

# Ensure you are on the right branch
git branch --show-current

# Verify upstream tracking is set
git rev-parse --abbrev-ref --symbolic-full-name @{u}
CheckPass ConditionFix
No uncommitted changesgit status shows clean treeCommit or stash intentionally
No orphaned stashesgit stash list is empty or all stashes are accounted forApply or drop stale stashes
Correct branchBranch name matches your workgit checkout <branch>
Upstream setTracking branch existsgit push -u origin HEAD on first push
No untracked noiseNo generated files, build artifacts, or editor filesAdd to .gitignore or remove

Phase 2: Pre-Push Verification

Run the full verification suite before pushing. Order matters -- fail fast on the cheapest checks first.

# 1. Lint (fastest, catches formatting/style issues)
make lint            # or: npm run lint, cargo clippy, flake8, etc.

# 2. Type checking (catches type errors without running code)
make typecheck       # or: npx tsc --noEmit, mypy, phpstan, etc.

# 3. Unit tests (fast feedback on logic correctness)
make test            # or: npm test, pytest, phpunit, cargo test, etc.

# 4. Integration / end-to-end tests (slower, catches wiring issues)
make test-integration

# 5. Build (ensures the artifact compiles / bundles cleanly)
make build           # or: npm run build, cargo build --release, etc.

If any step fails, stop and fix before proceeding. Do not push broken code.

See Pre-Push Checks Reference for the full verification order, CI parity tips, and conflict detection.


Phase 3: Diff Review

Self-review the full diff before handing it to others. You will catch things automated tools miss.

# Full diff against the target branch
git diff main...HEAD

# Commit-by-commit review (more granular)
git log --oneline main..HEAD
git show <commit-hash>

# Stat summary (spot unexpectedly large changes)
git diff --stat main...HEAD

# Check for secrets or sensitive data
git diff main...HEAD | grep -iE '(password|secret|token|api.key|private.key)' || true

Self-Review Checklist

  • No debug code left behind (console.log, dd(), print_r, var_dump, TODO)
  • No commented-out code that should be deleted
  • No secrets, tokens, or credentials in the diff
  • No unrelated changes mixed into the branch
  • Commit messages are clear and follow project conventions
  • New files are in the correct directories
  • Tests cover the changes (not just existing tests passing)

Phase 4: Integration Strategy Selection

Choose how to integrate based on your team's workflow, the branch's history, and the target branch.

StrategyWhen to UseCommand
Pull RequestTeam requires review, CI gates, or audit trailPush + open PR (see Phase 6)
Direct mergeTrunk-based, solo project, or pre-approved changegit checkout main && git merge --no-ff <branch>
Squash and mergeBranch has messy intermediate commitsVia PR settings, or: git merge --squash <branch>
Rebase and mergeLinear history desired, clean commit disciplinegit rebase main && git checkout main && git merge --ff-only <branch>
Stacked PRBranch builds on another unmerged branchPush + open PR targeting parent branch

See Integration Strategies Reference for the full decision matrix, rebase vs merge trade-offs, and stacked PR workflow.


Phase 5: Message Writing

Write a clear, structured message whether you are creating a PR or a merge commit.

PR Message Structure

## Summary
What changed and why (1-3 sentences).

## Changes
- Bullet list of specific changes

## Test Plan
- How to verify the changes work

## Risks
- What could go wrong, migration notes, rollback considerations

## Linked Tickets
- PROJ-123

For comprehensive PR messages, use the pr-message-writer skill which provides templates, structured sections, and verification queries.

See PR Message Template Reference for the full template and guidance on writing effective messages.


Phase 6: Push and PR Creation

Push to Remote

# First push (sets upstream tracking)
git push -u origin HEAD

# Subsequent pushes
git push

# After rebase (use --force-with-lease, never --force)
git push --force-with-lease

Open a Pull Request

GitHub:

# Basic PR
gh pr create --title "feat: add user email verification" --body-file pr-description.md

# PR targeting a specific branch (for stacked PRs)
gh pr create --base feat/parent-branch --title "feat: add verification UI"

# Draft PR (not ready for review yet)
gh pr create --draft --fill

GitLab:

glab mr create --title "feat: add user email verification" --description-file pr-description.md

# Target a specific branch
glab mr create --target-branch feat/parent-branch

# Draft MR
glab mr create --draft

Bitbucket:

# Using Bitbucket's REST API via curl
curl -X POST -H "Content-Type: application/json" \
  "https://api.bitbucket.org/2.0/repositories/{workspace}/{repo}/pullrequests" \
  -d '{"title": "feat: add email verification", "source": {"branch": {"name": "feat/email-verification"}}, "destination": {"branch": {"name": "main"}}}'

Direct Merge (No PR)

# Fetch latest and merge with a merge commit
git checkout main
git pull
git merge --no-ff feat/my-branch -m "Merge feat/my-branch: add user email verification"

# Push main
git push

Phase 7: Cleanup

After the branch is merged, clean up local and remote references.

# Delete the local branch
git branch -d feat/my-branch

# Delete the remote branch (if not auto-deleted by PR merge)
git push origin --delete feat/my-branch

# Prune remote tracking references
git fetch --prune

# If working in a worktree, remove it
git worktree remove /path/to/worktree

See Cleanup Commands Reference for pruning stale branches, worktree cleanup, and upstream maintenance.


Recovery

Common mistakes and how to fix them.

MistakeRecovery
Force-pushed the wrong branchgit reflog to find the pre-push commit, then git push --force-with-lease origin <sha>:<branch>
Deleted an unmerged branchgit reflog to find the tip, then git checkout -b <branch> <sha>
Pushed secrets to remoteRotate the secret immediately, then git filter-repo to purge from history
Merged to wrong target branchgit revert -m 1 <merge-commit> on the wrong target, then merge to the correct one
Rebase went wrong mid-waygit rebase --abort to return to pre-rebase state
Lost work after worktree removalgit reflog -- commits survive worktree deletion if they were committed
PR targets wrong base branchUpdate the PR's base branch in the hosting platform UI or CLI

See Recovery Reference for detailed walkthroughs of each recovery scenario.


Quality Checklist

Run through this before considering the branch done.

  • All tests pass (unit, integration, e2e as applicable)
  • Linter and type checker report no errors
  • Build completes without warnings
  • Self-reviewed the full diff -- no debug code, secrets, or unrelated changes
  • Commit messages follow project conventions
  • PR description explains what, why, and how to verify
  • Target branch is correct
  • Branch is up to date with the target (rebased or merged)
  • CI pipeline passes on the remote
  • Reviewer(s) assigned (if PR workflow)
  • Local branch and worktree cleaned up after merge

Critical Rules

  1. Never force-push to main, master, or any shared long-lived branch. Use --force-with-lease on feature branches only.
  2. Never skip verification. A single untested push can break the pipeline for the entire team.
  3. Never delete an unmerged branch without explicit confirmation. Recover with git reflog if it happens accidentally.
  4. Never push secrets. Check the diff before every push. Rotate immediately if it happens.
  5. Always use --force-with-lease instead of --force. It prevents overwriting someone else's work on a shared branch.
  6. Always clean up after merge. Stale branches and orphaned worktrees accumulate and cause confusion.
  7. Always write a meaningful PR/merge message. "Fix stuff" helps nobody -- explain what changed and why.
  8. Rebase only your own branches. Rebasing shared branches rewrites history others depend on.

Reference Files

ReferenceContents
Pre-Push ChecksVerification command order, CI parity, conflict detection, pre-push hook setup
Integration StrategiesMerge vs rebase vs squash decision matrix, stacked PRs, when each strategy fits
PR Message TemplateStructured PR template, writing guidance, cross-reference to pr-message-writer skill
Cleanup CommandsBranch pruning, worktree removal, upstream cleanup, batch operations
RecoveryDetailed recovery walkthroughs for force-push, deleted branch, lost stash, bad merge

Integration with Other Skills

SituationRecommended Skill
Writing a comprehensive PR messagepr-message-writer
Reviewing code before mergingcode-review-excellence
Managing git worktreesworktree-start, worktree-list, worktree-switch, worktree-clean
Choosing a branching strategygit-workflow
Running verification before declaring doneverification-before-completion
Requesting a structured code reviewrequesting-code-review

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.48%
按下载量换算26

Claude

25.95%
按下载量换算18

Cursor

19.93%
按下载量换算14

Gemini CLI

8.93%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills