merge
Merge changes from the topic branch to the merge base branch. Use when the user wants to merge their session's work back to the base branch.
- License 许可
- MIT
- 所属仓库
- microsoft/vscode
- 最近更新
- 2026-11-11
- Stars
- ★ 20w
- Forks
- 4.4w
01 前言 Front Matter
- name
- merge
- description
- Merge changes from the topic branch to the merge base branch. Use when the user wants to merge their session's work back to the base branch.
03 SKILL.md 正文
<!-- Customize this skill and select save to override its behavior. Delete that copy to restore the built-in behavior. -->
Merge Changes
Merge the topic branch (checked out in the current worktree) into the merge base branch (checked out in the main worktree). The context block appended to the prompt contains the source branch, target branch, and main worktree path.
Guidelines
- Never force-push (
--force,--force-with-lease) without explicit user approval. - Never skip pre-push hooks (do not use
--no-verify). - Never rewrite or drop commits without asking the user.
- When in doubt about conflict resolution — ask the user.
Workflow
1. Commit uncommitted changes in the current worktree
Check for uncommitted changes in the current worktree:
git status --porcelain
If there are uncommitted changes, use the /commit skill to commit them before continuing.
2. Merge the topic branch into the base branch
Use git -C <main-worktree-path> to run commands against the main worktree without leaving the current worktree.
git -C <main-worktree-path> merge <topic-branch>
3. Handle merge conflicts
If the merge reports conflicts:
3.1. List conflicted files:
git -C <main-worktree-path> diff --name-only --diff-filter=U
3.2. For each conflicted file, read the file content, resolve the conflict by preserving the intent of both sides, and stage the resolved file:
git -C <main-worktree-path> add <resolved-file>
3.3. When in doubt on how to resolve a merge conflict, ask the user for guidance. If the user wants to abort, run:
git -C <main-worktree-path> merge --abort
3.4. Once all conflicts are resolved and staged, commit the merge:
git -C <main-worktree-path> commit --no-edit
Validation
After the merge completes, verify the result:
- Confirm the main worktree is clean:
git -C <main-worktree-path> status --porcelain
- Confirm the topic branch is an ancestor of the base branch (i.e. all commits are merged):
git -C <main-worktree-path> merge-base --is-ancestor <topic-branch> HEAD
04 同仓库更多 Skills
sweeper-query
Answer natural-language questions about the VS Code Sweeper's published issue index (index-<name>.json for microsoft/vscode and the enrolled family repos) — which issues are agent-ready to implement or plan, what the sweeper proposed for an assignee or area, whether the sweeper knows a report as a duplicate, the highest-value open bugs in a lane — and, for one issue, the review's full record (evidence with file citations, fix brief, proposed comment). Use ONLY when the request explicitly names the sweeper — "sweeper", "vscodesweeper", "sweeper-query", a sweeper verdict, record, brief or index, an agent-ready issue — or asks what "the sweeper" found, proposed or knows. Do NOT use for general questions about issues, duplicates, priorities or ranking that do not mention the sweeper. Read-only; discovery only.
update-skills
Create or update repository skills and instructions when major learnings are discovered during a session. Use when the user says "learn!", when a significant pattern or pitfall is identified, or when reusable domain knowledge should be captured for future sessions.
update-pr
Update the pull request for the current session. Use when the user wants to push new changes to an existing PR.
sync
Sync the current session branch with its upstream branch, or publish the current session branch to a remote. Use when the user asks to sync a branch, pull latest changes, rebase onto upstream, push current branch, publish branch, or set upstream.
sync-upstream
Update a stale session branch by rebasing onto the latest origin. Use when the upstream has moved significantly and the session needs to catch up, resolving conflicts by preserving upstream changes and adapting session work to fit.
generate-run-commands
Generate or modify run commands for the current session. Use when the user wants to set up or update run commands that appear in the session's Run button.